构造方法:
- 1.构造方法没有返回值
- 2.构造方法的名称要与类名相同。
注意:如果在类中定义的构造方法都不是无参的构造方法,则编译器不会为类设置一个默认的无参构造方法,当试图调用无参构造方法实例化一个对象时,编译器会报错。所以只有在类中没有定义任何的构造方法,编译器才会在该类中自动创建一个不带参数的构造方法。
静态变量,常量,方法
有时需要在同一个内存区域共享一个数据。例如:
在圆类对象和球类对象中都会使用到PI值,如果不使用静态,系统会将这两个不在同一个类中定义的常量分配到不同的内存空间中。将这个常量设置为静态后,PI常量将会在内存中共享。如图所示。
静态方法:
- 1.在静态方法中不可以使用this关键字。
- 2.在静态方法中不可以直接调用非静态方法。
权限修饰符:
对象的引用:
注意:
例如一个Book类的对象的引用如下:
Book book;
引用只是存放一个对象的内存地址,并非存放一个对象,严格说:引用和对象是不同的,但是可以将这种区别忽略,如可以简单地说book是Book类的一个对象,而事实上应该说book是包含Book对象的一个应用。
对象的比较:
“==”运算符与equals()方法:
- equals()方法是String类中的方法,它用于比较两个对象引用所指的内容是否相等。
- “==”运算符比较的是两个对象引用的地址是否相等。(实际比较的是两个对象的HashCode是否相等)