首页 > Java > Java基础 > 正文

Java语言的三大特点是什么?

烟雨青岚
发布: 2020-07-01 15:26:12
原创
5810 人浏览过

Java语言的三大特征是:封装、继承、多态。封装就是将类的信息隐藏在类内部,不允许外部程序直接访问,而是通过该类的方法实现对隐藏信息的操作和访问;继承是类与类的一种关系,比较像集合中的从属于关系;多态指的是对象的多种形态。

Java语言的三大特点是什么?

Java语言的三大特征:封装、继承、多态

一、 封装

1. 封装就是将类的信息隐藏在类内部,不允许外部程序直接访问,而是通过该类的方法实现对隐藏信息的操作和访问。

2. 封装是怎么实现的呢?

   a. 需要修改属性的访问控制符(修改为private);

   b. 创建getter/setter方法(用于属性的读写);

   c. 在getter/setter方法中加入属性控制语句(用于判断属性值的合法性);

public class Student{
    private float score;
    public void setScore(float score){
        this.score = score;
    }
    public float getScore(){
        return score;
    }
}
登录后复制

二、 继承

继承是类与类的一种关系,比较像集合中的从属于关系。比如说,狗属于动物。就可以看成狗类继承了动物类,那么狗类就是动物类的子类(派生类),动物类就是狗类的父类(基类)。在Java中是单继承的,也就是说一个子类只有一个父类。

//父类:动物类
public class Animal{
    public int age;
    public String name;
    public void eat(){
        System.out.println("动物具有吃东西的本领!");
    }
}
//子类:狗类
public class Dog extends Animal {
}
登录后复制

三、 多态

多态指的是对象的多种形态。多态有两种:引用多态和方法多态。继承是多态的实现基础。

1.引用多态

父类的引用可以指向本类的对象;父类的引用可以指向子类的对象。

//父类:动物类
public class Animal{
    public int age;
    public String name;
    public void eat(){
        System.out.println("动物具有吃东西的本领!");
    }
}
//子类:狗类
public class Dog extends Animal {
}
//测试类
public class Test{
    public static void main(String[] args) {
    //父类的引用可以指向本类的对象
    Animal ani1 = new Animal();
    //父类的引用可以指向子类的对象
    Animal ani2 = new Dog();
    }
}
登录后复制

2. 方法多态

创建父类对象时,调用的方法为父类方法;

创建子类对象时,调用的方法是子类重写的方法或继承自父类的方法;

//父类:动物类
public class Animal{
    public int age;
    public String name;
    public void eat(){
        System.out.println("动物具有吃东西的本领!");
    }
}
//子类:狗类
public class Dog extends Animal {
    public void eat(){
        System.out.println("狗是吃肉的。");
    }
}
//测试类
public class Test{
    public static void main(String[] args) {
    //父类的引用可以指向本类的对象
    Animal ani1 = new Animal();
    //父类的引用可以指向子类的对象
    Animal ani2 = new Dog();
    //输出动物具有吃的本领
    ani1.eat();
    //输出狗是吃肉的
    ani2.eat();
    }
}
登录后复制

推荐教程:《java教程

以上是Java语言的三大特点是什么?的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板