本周主要学习了java面向对象的封装,继承和多态。
封装:
关键词和C嘎嘎一样,private,protected,public等来实现封装。
public class Person {
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String newName) {
name = newName;
}
public int getAge() {
return age;
}
public void setAge(int newAge) {
if (newAge > 0) {
age = newAge;
}
}
}
继承:
java 中的类只支持单继承,一个类只能直接继承一个父类。,C嘎嘎支持多继承;
class Animal {
void eat() {
System.out.println("Animal is eating");
}
}
class Dog extends Animal {
void bark() {
System.out.println("Dog is barking");
}
}
public class Main {
public static void main(String[] args) {
Dog dog = new Dog();
dog.eat();
dog.bark();
}
}
多态:
Java 中的多态性通过方法重写和方法重载来实现。子类可以重写父类的方法,而方法重载则是在同一个类中可以定义多个方法,只要它们的参数类型或数量不同即可。而C嘎嘎中多态只能通过虚函数和函数重载实现,并在派生类中重写;
abstract class Shape {
abstract void draw();
}
class Circle extends Shape {
void draw() {
System.out.println("Drawing Circle");
}
}