什么叫做类?
这里的类,与分类同义。如:水果类、动物类。更详细的解释:具有相似特征的事物的统称叫类。例如:水果类,里的西瓜、苹果、葡萄。它们都是甜的、水多。又例如动物类它包含:小猫、小狗、狮子、豹子它们都是四脚踏地、都要吃东西。
作用是汇总和分类,汇总的目的不凌乱、分类的目的代码复用、修Bug、便于维护。有了明确的类,便于精准定位。
为什么要类?
结构化编程是用来取代goto语句的,它是指把编程标准化,例如:if…else…语句、while语句等。if…else就是一种编程结构。结构化编程无法解决两个问题,一是,全局变量问题;二是,代码复用。
全局变量的好处是最大利用内存,让无需再次运行的变量消失,剩下的内存用于处理其他的代码。注:变量的作用域详解。域是指的区域。
思考:这是不是垃圾回收机制奥秘?
代码复用体现:我们都知道,调用代码,先是指定“类”点“方法名”。没有类,会不方便寻找、不便于修Bug、不便于维护。
什么是多态?
如:水果类里西瓜和葡萄,西瓜要刀切了才能吃,葡萄是直接吃。多态是指:类包含的对象里不同的功能(行为、实现)
如:动物类小猫和小狗,小猫喵喵叫,小狗汪汪叫。多态是指:类包含的对象里不同的功能(实现)
为什么要多态?
无需写大量重复代码,减轻写代码的工作量。设想,如果没有多态,我们需要把这些重新定义类和多麻烦呀!于是多态诞生了。
什么是继承?
如水果类的西瓜种子,埋进土里,结出的果实一定是西瓜;苹果种子,埋进土里,结出的果实一定是,苹果。
如动物类,里生下来的小猫下来的一定是猫,小狗剩下来的一定是狗
为什么要继承?
减轻代码工作量,无需重复定义代码。
什么是封装?
如:水果类的西瓜,我们是当着客人切西瓜,还是拿到厨房,葡萄我们是当着客人清洗还是拿到厨房洗。拿到厨房切和洗的就是封装。
如:动物类小猫喵喵叫,我们需要要看清,小猫声带如何振动,如何发声的?看不见就是封装。
为什么要封装?
为了更加美观,让客人体验好
水果类
public class Fruit {
public static void main(String[] args) {
Animal.cat();//调用不需要写
}
private void watermelon(){//甜的、水分很多
System.out.println("刀切再吃");
}
void grape(){//甜的、水分很多
System.out.println("洗完就吃");
}
Fruit(){//构造器,不用写
}
}
动物类
public class Animal {
Animal a=new Animal();//建立实例
a.id=10;
System.out.println(a.id);
public void dog(){//四脚着地、都有吃东西
System.out.println("汪汪地叫");
}
public static void cat(){//四脚着地、都有吃东西
System.out.println("喵喵地叫");
}
Animal(){//构造器
}
}
class SmallDog extends Animal{//继承
void smallDog(){
System.out.println("刚出生的");
}
}