回顾
上回书说道:Java的基础语法。Java中的面向对象思想。
这回我们详细聊下类,类中的修饰词,和类的复用。
类:
如何编写一个类;如何实例化一个类对象;如何调用对象的属性和方法。前面我们已经说过。
下面是Java中,对类的一些基本概念:
1,所有的代码都要写到类文件中。
2,每一个类文件,必须要有,且只能有一个public 类。
3,main方法是固定写法,是程序的入口。
修饰词:
类是由属性和方法组成的。在类的属性和方法前,可以添加一些修饰词,这些修饰词会为属性和方法添加一些不同的特性:
static修饰的属性和方法,是静态的,是可以用类名直接访问的。如著名的System.out.println(),你没有new System这个类,但却直接调用了它的out属性。
final修饰的属性和方法,是不可变的,不可以再重新赋值或修改,通常用来和static一起声明常量,或者添加在方法前,防止该方法被重写。这个我们讲继承时再提。
属性和方法前会添加诸如private、protected、public,用来限制属性和方法的访问权限(也可以不添加,但不推荐)。
private修饰的属性和方法,只能在类的内部被调用,其他类不能调用,无法访问和调用private的属性和方法。通常是自己内部使用的。
public修饰的属性和方法,是可以被其他类调用,是对外公开的。通常是供外部使用的。
protected修饰的属性和方法,可以被子类调用,却不能被其他外部类调用,这个我们讲继承时再提。
类的初始化
例子程序:
public class InitialTest {
public static void main(String str[]){
Test a=new Test();
}
}
class Test{
static Sample staticSample=new Sample("静态属性初始化");
static{
System.out.println("static块执行");
}
Sample localSample=new Sample("一般属性初始化");
Test(){
System.out.println("构造函数");
}
}
class Sample{
Sample(String s){
System.out.println(s);
}
}
输出:
静态属性初始化
静态块执行
一般属性初始化
构造函数执行
this关键字
在类的方法中,可以通过this来调用自身的属性和方法。
总的来说,用Java编写程序很直观,当然也会感到轻松。
因为,你只需要做两件事:
一,把问题中出现的人啊,事物啊,用Class描述出来。也就是用属性和方法描述出来。
二,在main方法中,new出他们,并调用他们的方法,让他们产生互动,让他们自己去解决问题。
下一篇讲:3,复用
本节问题:
1,请自行设计一个程序,用来模拟一个动物园(尽量用到所有关键字,并注释解释为什么用到)
参考思路:
根据动物园的业务,对象可分为:
游客(姓名、年龄、性别;喂食,拍照)、动物(种类;行为)。
动物园(维护游客,维护动物)。