对象导论
基本概念
面向对象程序设计:处理实际的问题时,我们对问题进行分类、抽象,不同的事物建立不同的模型,模型包含自身的特性和动作,可以发送消息和其他模型进行通信,使其可以解决一类问题的思想。
类:有相同特性和行为的事物的集合。比如:人,鱼,花。
对象:所有的东西都可以视为对象,它有自己的属性和方法。比如:一个人,有名字,年龄,可以吃饭,睡觉;一条狗 有名字,可以叫;一个电视机,有品牌,可以显示图像等。
继承:以已有的一个类(基类)为模板创建一个新类(子类),新类包含了新的属性和方法。比如:基于狗类,创建一个新的类宠物狗,包含新的方法:撒娇。
组合:把多个不同的类组合在一起形成一个新的类。比如:汽车,包含发动机,变速箱,轮胎等
多态:类方法执行时,根据对象的不同,动态调用不同的方法。比如:父类,动物,会叫(方法);子类 猫,喵喵叫; 子类 ,狗,汪汪叫;执行叫的时候根据 狗 猫的类型调用其对应的方法。
多态所表达的意思是:我知道你是一个动物,你会叫,那你去叫吧,但是主要具体的叫法。而不是这样:如果你是猫,则喵喵叫;如果你是狗,则汪汪叫; ---注意理解
一切都是对象
java中(几乎)一切都是对象。
java中通过引用来操作对象:String s = "hello"; 其中s就是引用,"hello"就是对象,具体操作时,我们可以用 s = s + "world",改变引用。
创建对象:使用new关键字,上面String s = "hellow" 是Java做了转换,实际是String s = new String("hello");
特例:基本类型,不用new关键字,直接用类型 + 变量名定义即可,例如:int a;
基本类型 | 大小 | 最小值 | 最大值 |
boolean | - | - | - |
char | 16-bit | Unicode 0 | Unicode 216-1 |
byte | 8-bit | -128 | +127 |
short | 16bit | -215 | 215-1 |
int | 32 | -231 | 231-1 |
long | 64 | -263 | 263-1 |
float | 32 | IEEE754 | IEEE754 |
double | 64 | IEEE754 | IEEE754 |
void | - | - | - |
创建类:
class ATypename { // class创建类的关键字, Atypename类名 int x; //成员变量 float y; //成员变量 boolean z; //成员变量 void f(String s) { //成员函数 System.out.println(s); } }
编码风格:
类命名:大驼峰,第一个字母大写,如果类命名由几个单词构成,把他们拼在一起,其中每个单词的首字母大写。例如:PetDog。
变量,方法命名:小驼峰,和大驼峰风格一样,只是首字母小写。例如:backgroundColor,studentName。
缩进:4个空格