博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JAVA知识(二):浅谈类及其类的三大基本特征
阅读量:3916 次
发布时间:2019-05-23

本文共 1528 字,大约阅读时间需要 5 分钟。

一、类(class)

               类是什么?最浅的说法就是,我们人类是一个群体,是一个类,鸡鸭牛等属于禽类,花草属于植物类等等。万物都有一个分类,而我们的程序也是如此,比如说定义一个类 public class a   其中 a就是一个公共类,它可以被继承,也可以被实例化。其实在进行java的class文件创建的时候已经定义一个类了。

                如图所示

                                                

                可以看出相当的简单。

                同时类有三种基本特征:封装、继承和多态。

(1)类的封装

                接下来讲一下类的封装。封装,是与对象有关的一个概念。那什么是封装呢?《java核心技术》里面讲:封装不过是将数据和行为组合在一个包里,并对对象的使用者隐藏了数据的实现方式。这是什么意思呢?看下面代码

                                              

public class Test1 {//定义一个类的封装	public String getName() {		return name;	}	public void setName(String name) {		this.name = name;	}	private String name;}

这里建了一个Test1的方法类,把他们都封装在Test1类中,private是一种封装的体现。

public class five {//构建对象t实例化Test1,调用Test1中的封装的方法		public static void main(String [] a){ 		Test1 t = new Test1();		t.setName("张三");		System.out.println(t.getName());	}	}

通过建立Test1对象t并实例化,调用Test1类中的方法,设置一个字符串,并且输出获得的字符串。同时,可以看出在类的封装中谁调用了方法。这就是类的封装,如果类不封装其实也可以,但是出现的情况就是当代码过多时,你将面临你定义的方法类中属性值被其他类修改!并且其他程序员在程序阅读过程中也会相当的吃力。这就是不封装的坏处。

                         

(2)类的继承

           继承的最基础的标志就是extends关键字。继承有很多好处,其中一个就是,类可以继承另一个类中的所有方法。这个对于我来说最有感触的:哎我不用写方法了呀,直接继承上一个类,调用它的方法不就完事了吗?这就是我们程序员所谓的“懒”的结果。(哈哈,其实不是的)

class human {    public human() {             }} class Man extends human {    public Man() {             }}

如上面代码可以看出,男人继承人类。人类是包括男女人,男人继承人类的特征是说的过去的。那么男人同时可以使用人类的所有特性,也就是所谓的方法。子类就是男人,父类就是人类。同时要注意几个点就是,1.要求子类和父类同一个包下  2.子类能够继承父类的public和protected成员变量,不能够继承private 3. 若子类出现和父类同名,则会覆盖父类的名字和方法。

(3)类的多态

         类的多态是什么?

                      如图所示

                                  

                           首先,类的多态实在继承的基础上实现的。父类的方法可以被子类调用,同时父类的对象可以实例化子类,但是子类不能实例化父类,同时子类不能实例化其他子类。比如说,子类 a =new 子类b()这是错误

父类 对象名 = new 子类A();父类 对象名 = new 子类B();

当子类的方法和父类的方法一样时,会调用子类的方法。


总结:

             一、类是构造对象的模板或蓝图

             二、类构造对象的过程称为创建类的实例

             三、类有三种基本特征分别是:封装、继承和多态

             四、java编写的所有代码都在类的内部

             

转载地址:http://ojtrn.baihongyu.com/

你可能感兴趣的文章
iPhone的九宫格实现代码
查看>>
iPhone开发中UIPageControl实现自定义按钮
查看>>
关于UIButton的highlighted状态的总结
查看>>
先学再做、先做再学、边做边学,到底一样以什么样的方式来学一项新技术
查看>>
iphone开发-地图注解(地图上的大头针)
查看>>
Java:类与继承
查看>>
深入理解Java:String
查看>>
Java异常处理和设计
查看>>
Java设计模式之观察者模式
查看>>
一位资深程序员大牛给予Java初学者的学习路线建议
查看>>
浅谈Java中的hashcode方法
查看>>
Java NIO:NIO概述
查看>>
Java中的static关键字解析
查看>>
Java多态性理解
查看>>
Java IO流学习总结
查看>>
Java发送http的get、post请求
查看>>
Java中volatile关键字的含义
查看>>
给Java程序猿们推荐一些值得一看的好书
查看>>
Java这些冷知识你知道吗?
查看>>
假如时光倒流,我会这么学习Java
查看>>