最近在看华东师范大学的java核心技术,对每个章节做个笔记详解吧!希望能坚持下去
一、OP和OO
- OP(Oriented Procedure)的典型代表是C和Pascal。更强调方法动作,所有的变量都是被动参与进来,没有自主决定权。
public class OPExample{
public static void main(String[] args){
int a, b, c;
a = 1;
b = 2;
c = add(a, b);
System.out.println("c is " + c);
}
public static int add(int m, int n){ //函数定义
//像动宾结构,add是谓语动词,参数是宾语
return m + n;
}
}
- OO(Oriented Object)的方法属于每个对象的。能否实现是由每个对象说了算的,有主人翁精神。主要的代表是C++和java
public class OPExample{
private int a;
public void setA(int a){
this.a = a;
}
public int add(int b){
return this.a + b;
}
public static void mian(String[] args){
int b = 5;
OOExample obj = new OOExample();//new 一个对象obj
obj.setA(10);//调用setA函数
System.out.println(obj.add(b));//add从属于一个对象
//主语obj,谓语add,宾语b,更强调方法的执行主体了
}
}
二、类的继承关系
public class Father{
private int money = 100;//私有变量,子类无法访问
long mobile = 1399999999;
public void hello(){
System.out.println("hello");
}
类可以继承:子类可以继承父类所有内容(不能直接访问private成员)
public class Son extends Father{
public void hi(){
//子类可以扩展自己的成员方法
System.out.println("hi~~~~");
}
public static void main(String[] args){
Son s = new Son();
System.out.println(s.mobile);//Son没有定义mobile,而是通过父类继承的
//System.out.println(s.money);//error 父类的money是私有的,子类无法直接访问
s.hello();//Son没有定义f1,而是通过父类继承的
s.hi();//Son可以自定义自己的成员方法
}
}