资讯专栏INFORMATION COLUMN

JavaOOP:类和对象

whatsns / 943人阅读

摘要:中类的概念及类与对象的关系什么是类从语义上理解,类就是用于创建对象的模版,是一个抽象的概念从语法上理解,类就是我们指定的一种数据类型类和对象的关系语义上,类是创建对象的模版,对象是类的实例语法上,类是自定义数据类型,对象是这种类型的变量创建

1、Java中类的概念及类与对象的关系

什么是类?
从语义上理解,类就是用于创建对象的模版,是一个抽象的概念;从语法上理解,类就是我们指定的一种数据类型;

类和对象的关系
语义上,类是创建对象的模版,对象是类的实例;语法上,类是自定义数据类型,对象是这种类型的变量;

创建对象
类名 对象名=new 类();

引用对象成员
引用对象属性:对象.属性;
引用对象方法:对象.方法();

注意:字段属性默认为“private”;

2、Java中类的封装的作用与实现

字段成员公开属性:public、private,对核心成员对外不公开;属性成员setter、getter方法,对核心成员操作;

私有字段
属性
方法

private int stuNo;
public int getStuNo(){
    return stuNo;
}
public void setStuNo(int stuNo){
    this.stuNo=stuNo;
}

技巧:多属性封装大同小异,Eclipse右击source,generate Setter and Getter自动生成;

3、Java中的构造方法
构造方法:负责对象成员的初始化工作,创建类时可以对某些字段赋初值;
语法规则:方法名和类名相同,没有返回值【不是“void”】

public 类名(参数){
...
}

//原始构造方法(默认无参构造函数)
public Demo2() {
}

//构造方法重载
public Demo2(int stuNo, String stuName, String className) {
    this.stuNo = stuNo;
    this.stuName = stuName;
    this.className = className;
}

构造方法是Java类中一种特殊方法:

该方法与类同名

该方法无返回值

该方法不能手工调用,它是在创建类的实例时系统自动调用

一个类可以没有构造方法(隐式无参构造方法),也可以有多个构造方法,它们之间构成重载关系

如果我们定义有参构造方法,屏蔽系统无参构造方法

构造方法不能被重载

构造方法作用和使用场合:

创建一个类的实例时,给私有变量赋初值

简化我们为类字段赋值的代码

4、Java中的重载
当一个类中存在两个或两个以上同名的方法,当这两个方法满足以下关系时,他们之间构成重载关系:

一个类中存在两个以上同名方法

方法参数组合必须不同(参数个数或参数类型的组合不同)

返回值类型不能作为判断方法是否重载的依据

要是你之前学过C++,就会觉得这部分挺简单的!

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/64058.html

相关文章

  • 类和模块 类和原型 工厂方法 构造函数 constructor

    摘要:即两个构造函数创建的实例的是指向同一个原型对象当原型链修改的时候,其子不会发生改变通过运算符来进行计算属性对就是上文中的构造器。 类和模块每个js的对象都是属性的集合。相互之间没有联系。js也能定义对象的类,让每个对象都共享某些属性。类的成员或者实例包含一些属性,用来存放或者定义他们的状态。有些属性定义了其行为,(行为或者称为方法)方法是类定义的,被所有的实例共享。例如,用一个类来表示...

    hedzr 评论0 收藏0
  • java入门第二季--第1章 类和对象--什么是类和对象

    摘要:什么是对象什么是面向对象什么是类什么是对象的属性什么是对象的方法类和对象的关系 什么是对象 showImg(https://segmentfault.com/img/bVbnyOy?w=927&h=595); 什么是面向对象 showImg(https://segmentfault.com/img/bVbnyO3?w=962&h=539); showImg(https://segmen...

    Yi_Zhi_Yu 评论0 收藏0
  • JavaScript || 类和模块

    摘要:属性每个函数默认有属性方法返回的函数除外,其值为构造函数创建对象继承的对象。其思路使用原型链实现原型属性和方法的继承通过借用构造函数实现实例属性继承。 1 类和模块 每个独立的JavaScript对象都是一个属性的集合,独立对象间没有任何关系 ES5中的类是基于原型继承实现的:如果两个对象从同一个原型对象继承属性,称两个对象为同一个类的实例。r instanceof Range.pr...

    CoorChice 评论0 收藏0
  • 内部类和静态嵌套类

    摘要:嵌套类增加了封装性内部类和静态嵌套类的不同根源来自于,最大区别在于访问外部类成员的权限。静态嵌套类修饰符使得嵌套类对象成为外部类的静态成员,与外部类直接关联。 术语规范:按照官方文档,定义在外部类(封装类)内部的类称之为nested class,根据是否被static关键字修饰又分为两类:static nested classes 和 inner classes。 class Oute...

    hsluoyz 评论0 收藏0
  • Java学习记录——开始以及类和对象

    摘要:开始先装好的相关环境谷歌一下。自动调用构造函数,并且将传进去的三个参数赋值给的三个属性因为指向这个出来的对象通过这样我们可以得到一个的对象的年龄,颜色,尺寸分别为。 写在前面 作为一个前端切图仔,再学点后端的东西吧,感觉后端很有意思啊,不学白不学。 记录下整个过程,方便以后回顾和反思。 开始 先装好JAVA的相关环境(谷歌一下)。 小伙伴们推荐Ide用IDEA(谷歌下载安装)。 IDE...

    ivan_qhz 评论0 收藏0

发表评论

0条评论

whatsns

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<