java是一种面向对象语言,包含封装、继承、多态3大基本特征,遵循单一职责、开放闭合、里氏替换、接口隔离、依赖倒置5大原则。
重载,就是在同一个类中,多个函数或方法有同样的名称,但是参数列表不同,这样的同名不同参数的函数或方法,互相称之为重载函数或重载方法。
public class Dog {
public void bark() {
System.out.println("hello");
}
public void bark(int num) {
for (int i = 0; i < num; i++) {
System.out.println("hello");
}
}
}
重写,就是在java的子类与父类中,有两个名称和参数列表都相同的方法,由于他们具有相同的方法签名,所以子类中的新方法覆盖父类中的原有方法。
class Dog {
public void bark() {
System.out.println("hello");
}
public void bark(int num) {
for (int i = 0; i < num; i++) {
System.out.println("hello");
}
}
}
class RedDog extends Dog {
@Override
public void bark() {
System.out.println("world");
}
}
class Test {
public static void main(String[] args) {
Dog dog = new RedDog();
dog.bark();
}
}
继承和实现,只能是单继承,多实现,比如,一个汽车,可以是油车、也可以是电车,也可以是混电车,实现多个标准即可,但只能继承一个品牌车,奔驰车。
java中有3中变量,分别是类变量、成员变量、局部变量,它们分别保存在JVM的方法区、堆内存、栈内存中。
class Dog {
private static int a;
private int b;
public void test(int c) {
int d;
System.out.println(c + d);
}
}
变量a就是类变量,保存在方法区,变量b就是成员变量,保存在堆内存,变量c和d就是局部变量,保存在栈内存。