1.封装:主要实现了隐藏细节,对用户提供访问接口,无需关心方法的具体实现。
如下,人这个类封装了很多人的属性和行为;
2.继承:很好的实现了代码的复用,提高了编程效率。
人{
年龄(属性一)
身高(属性二)
性别(属性三)
做事(行为之一)
走路(行为之二)
说话(行为之三)
}
教师{
年龄(属性一)
身高(属性二)
性别(属性三)
做事(行为之一)
走路(行为之二)
说话(行为之三)
教书(行为之四)
}
教师继承了人的属性和行为,额外多出的是教书的行为。所以可以写成 教师 继承了 人这个类 的属性行为额外多出 教书的行为。
教师extends 人{
教书(行为之三)
}
3.多态:程序的可扩展性及可维护性增强。
多态性就是指父类的某个方法被其子类重写时,可以各自产生自己的功能行为。简单来说,多态是具有表现多种形态的能力的特征。
当一个类有很多子类时,并且这些子类都重写了父类中的某个方法。那么当我们把子类创建的对象的引用放到一个父类的对象中时,就得到了该对象的一个上转型对象,那么这个上转的对象在调用这个方法时就可能具有多种形态.
对象&类
1.对象是类的一种实例化, 对象用"属性"和"方法"来对应描述事物所具有的"静态属性"和"动态属性"。
2.类是用于描述同一类形的对象的一个抽象的概念, 类中定义了这一类对象应该具有的"静态属性"和"动态属性"
3.合适的方法出现在合适的类里
我理解的类,对象,方法:
1.类(具有相同属性和方法的对象的集合):首先它是抽象化的,没有具体指某个,而是指某一类。
比如说:人,汽车,动物,植物。
没有指具体哪个人(不管是大人,小孩,不管男女,只要是人,就属于人这个类)
也没有指具体哪辆汽车(不管什么牌子的汽车,不管几个轮子,只要它是汽车,就属于汽车这个类)。
public class Car{ }
2.对象(有属性和方法):类的实例化 -----------万物皆是对象--------------
比如说:具体某个人(我),具体某辆车(我的这辆车),具体某个动物(这只猫)。
3.方法(函数,成员函数): 就是完成特定功能的代码块
比如说:人吃饭,刹车等都是方法。
3.1普通方法
格式:
修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2...) { 方法体语句; return 返回值; //void类型 不用写return }
3.2构造方法
特点:
1.方法名称和类名相同
2.不用定义返回值类型
3.不可以写return语句
作用:
给对象初始化
构造方法的细节:
当一个类中没有定义构造函数时,系统会默认添加一个无参的构造方法。
当在类中自定义构造方法之后,默认的无参构造方法消失(如果需要无参构造方法需手动添加)。
public Car{ private String color; 权限修饰符private public void setColor(String color) { this.color = color; } //这是一个set方法 public String getColor() { .... } //这是一个get方法 } // 这就是一个类,具有共有属性,方法; public static void main(String[] args) { Car a=new Car(); //实例化Car类(传说中的New一下) a就是实例化之后的类,也就是对象 a.setColor="红色";
String s = a.getColor;
system.out.println(s); //输出车的颜色
}