推荐阅读:
前言
很多游戏开发者可能会有疑问,你会C#,JS,TS,为什么还要初识JAVA呢?有人可能会说,多学点对自己有好处呗。这个也算是我学习JAVA的一个理由吧,其实主要是因为现在很多游戏都是网络游戏,大部分公司都是使用JAVA写服务器的,因此,我觉得实在有学JAVA的必要了。
其实早就听说JAVA和C#很相似了,一直忙,没有时间了解,现在终于有时间了解了,此刻,内心竟有点小激动,现在就带大家了一起了解一下吧。
类和对象
例如:创建一个MyClass类,并实例化一个对象
//MyClass类
public class MyClass{
//构造函数
public MyClass(String name){
System.out.println("小狗的名字是 : " + name );
}
public static void main(String []args){
// 实例化对象
MyClass myClass= new MyClass( "我自己" );
}
}
通过上面的例子可以发现,在java中类和对象的使用与C#中可以说是一模一样的。
JAVA包
包主要用来对类和接口进行分类。Import语句就是用来提供一个合理的路径,使得编译器可以找到某个类。
例如:命令编译器载入java_installation/java/io路径下的所有类
import java.io.*;
引用类型
java中没有指针,用引用的来实现指针的功能。java中的引用类型有:对象、数组
Java 常量
常量在程序运行时是不能被修改的。在C#中常量用const关键字修饰,在Java中使用final 关键字来修饰。
例如:Π=3.141592
final double PI = 3.1415927;
Java 变量类型
1.类变量:独立于方法之外的变量,用 static 修饰。
2.实例变量:独立于方法之外的变量,不过没有 static 修饰。
3.局部变量:类的方法中的变量。
1.局部变量
局部变量在栈上分配的,局部变量没有默认值,所以局部变量被声明后,必须经过初始化,才可以使用。
2.实例变量
实例变量声明在一个类中,但在方法、构造方法和语句块之外。实例变量具有默认值。数值型变量的默认值是0,布尔型变量的默认值是false,引用类型变量的默认值是null。
3.类变量
访问控制修饰符
Java 支持 4 种不同的访问权限:default (即缺省,什么也不写),private ,public ,protected
意义同C#中相似,由于java中存在,因此,对于protected会有所差异,需要分两种情况:
1.子类与基类在同一包中:被声明为 protected 的变量、方法和构造器能被同一个包中的任何其他类访问;
2.子类与基类不在同一包中:那么在子类中,子类实例可以访问其从基类继承而来的 protected 方法,而不能访问基类实例的protected方法。
protected 是最难理解的一种 Java 类成员访问权限修饰词。
非访问修饰符
static 修饰符,用来修饰类方法和类变量。
final 修饰符,用来修饰类、方法和变量,final 修饰的类不能够被继承,修饰的方法不能被继承类重新定义,修饰的变量为常量,是不可修改的。final 修饰符通常和 static 修饰符一起使用来创建类常量
abstract 修饰符,用来创建抽象类和抽象方法。
synchronized 和 volatile 修饰符,主要用于线程的编程。
instanceof 运算符
该运算符用于操作对象实例,检查该对象是否是一个特定类型(类类型或接口类型)
格式如下:
( Object reference variable ) instanceof (class/interface type)