**JAVA是什么: **
面向对象的三大特征:封装,继承,多态
封装:就是把数据封装起来,让外界无法进行访问,一般用private修饰
用set和get方法进行属性的设置和获取
public class Student {
private String name;//设置属性并且私有化
private String sex;
private int age;
public Student() {//无参的构造方法
super();
// TODO Auto-generated constructor stub
}
public Student(String name, String sex, int age) {//构造方法
super();
this.name = name;
this.sex = sex;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {//打印属性
return "Student [name=" + name + ", sex=" + sex + ", age=" + age + "]";
}
}
。
继承:子类具有父类相同的属性和方法,并且对父类的方法进行重写。修饰词extends。
public class animal {
private String name;
private String sex;
private int age;
public animal() {
}
public animal(String name) {
this();
this.name=name;
System.out.println("父类的无参构造方法"+name);
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public void eat() {
System.out.println("吃东西");
}
public void run() {
System.out.println("在奔跑");
}
}
class Cat extends animal {
public Cat() {
System.out.println("子类无参的构造方法----");
}
public Cat(String name) {
super("汤姆猫");
System.out.println("子类的有参的构造方法");
}
}
class Dog extends animal {
}```
public class animaltest {
public static void main(String[] args) {
Cat cat=new Cat();
String name=cat.getName();
System.out.println(name);
//cat.run();
//cat.eat();
// Dog dog=new Dog();
// dog.run();
}
}
多态:一种事物的多种形态,父类的引用指向子类的对象。
```java
public class Car {
String name="车";
private double price;
public Car() {
}
public Car(String name, double price) {
this.name = name;
this.price = price;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
public void run() {
System.out.println("行驶中----");
}
public void piaoyi() {
System.out.println(name+"飘移--------");
}
}
class Aodi extends Car{
String name="奥迪";
private double price;
public void run() {
System.out.println(name+"我的速递是第一的");
}
}
class Baoma extends Car{
String name="宝马";
private double price;
@Override
public void run() {
System.out.println(name+"你不行,,,,我的速度是第一的");
}
}
public class CarTest {
public static void main(String[] args) {
Car car=new Aodi();//父类的应用指向子类的对象
car.run();
car.piaoyi();
Car car1=new Baoma();
car1.run();
}
}