1.关于构造器

如果说创建对象仅仅是为了调用这个类的方法,建议使用无参构造器

如果说创建对象的时候需要使用到对象的某个属性,可以使用构造器赋值

2.this关键字

  • this代表的是当前类的对象,this代表的是当前方法的调用者

  • this既是代表方法的调用者,它实际上和对象的作用是一样的,既可以调属性,也可以调方法。

  • this不能用在static方法中。

  • 开发中,this通常用在赋值,构造器赋值。

3.封装

1.代码层面

(1)属性私有化,所有的属性都要使用private封装

(2)提供一个公有的set,get方法。

  • getter方法能够按照客户的期望返回格式化的数据

  • setter方法可以限制和检验setter方法传入的参数是否合法

  • 隐藏对象的内部结构

    正确定义一个类:

    (1)所有的属性私有化

    (2)每个属性都有对应的setter、getter方法

20220719 第七组 陈美娜 Java(this,封装,构造器概念)的更多相关文章

  1. JAVA 理解封装的概念,private私有的,public公有的

    封装就是把不想或者不该告诉别人的东西隐藏起来,把可以告诉别人的公开. 做法:修改属性的访问权限来限制对属性的访问,并为每一个属性创建一对取值和赋值的方法,用于对这些属性的访问 通过封装,可以在给属性赋 ...

  2. java中封装的概念

    封装(Encapsulation)是类的三大特性之一, 就是将类的状态信息隐藏在类的内部,不允许外部程序直接访问, 而是通过该类提供的方法来实现对隐藏信息的操作和访问. 简而言之,就是隐藏内部实现,提 ...

  3. Java面向对象㈠ -- 封装

    Java的面向对象有三大特征:封装.继承.多态.这里主要对封装进行讲解. 封装可以理解为隐藏一个类的成员变量和成员函数,只对外提供需要提供的成员函数. Java的封装主要通过访问权限控制符:priva ...

  4. 体验Java的封装性

    package com.cnblogs.java; //体验Java的封装性 /* * 如下的人类年龄赋值-300岁,显然很不合理,这种直接对类的属性赋值,有时候虽然不合理但却会编译通过. * 所以我 ...

  5. JAVA中封装JSONUtils工具类及使用

    在JAVA中用json-lib-2.3-jdk15.jar包中提供了JSONObject和JSONArray基类,用于JSON的序列化和反序列化的操作.但是我们更习惯将其进一步封装,达到更好的重用. ...

  6. Java10-java语法基础(九)——java的封装性

    Java10-java语法基础(九)——java的封装性 一.Java的三大特性:封装.多态.继承 封装:通过类封装对象的数据成员和成员方法,保证只有可信的类或者对象能够访问这些方法和数据成员,对不可 ...

  7. Java异常封装

    转载: Java异常封装 Java里面的异常在真正工作中使用还是十分普遍的.什么时候该抛出什么异常,这个是必须知道的. 当然真正工作里面主动抛出的异常都是经过分装过的,自己可以定义错误码和异常描述. ...

  8. Java面向对象封装和继承

    面向对象 什么是面向过程.面向对象? 面向过程与面向对象都是我们编程中,编写程序的一种思维方式. 面向过程的程序设计方式,是遇到一件事时,思考“我该怎么做”,然后一步步实现的过程.例如:公司打扫卫生( ...

  9. Java之封装与访问权限控制(二)

    目录 Java之封装与访问权限控制(二) 包:库单元 import import static Java常用包 Java之封装与访问权限控制(二) 访问权限控制是具体实现的隐藏,是封装性的一部分体现. ...

  10. Java之封装与访问权限控制(一)

    目录 Java之封装与访问权限控制(一) 封装的概念 访问控制符 属性私有化 Java之封装与访问权限控制(一) 对于封装的概念,我总觉得自己还是挺了解的,但是真要我说,还真说不出个啥来.我只能默默地 ...

随机推荐

  1. linux交叉编译libiconv

    1.解压libiconv-1.14.tar 2.进入解压后目录libiconv-1.14 3.执行交叉编译环境命令,例如: source /home/huhe/environment-setup-aa ...

  2. 3DMAX安装失败怎么办?安装3DMAX失败提示错误怎么解决?

    3DMAX安装失败怎么办?安装3DMAX失败提示错误怎么解决?有很多同学想把3DMAX卸载后重新安装,但是发现3DMAX安装到一半就失败了或者显示3DMAX已安装或者安装未完成,大多数情况下其实是3D ...

  3. vscode将本地代码实时同步到服务器

    vscode近些年变得越来越流行了,主要是IDEA用上去实在有点卡,机器卡崩溃几次,这段时间也想用vscode体验一下,在自己的一些项目上面,想实现像phpstorm或者goland那样直接把代码通过 ...

  4. Oracle重建索引

    创建表 create table student( student_id number, name varchar2(240) ) tablespace school_data; 创建索引 creat ...

  5. uniapp全局黑白

    page{filter: grayscale(100%); } .uni-tabbar__item{filter: grayscale(100%); }

  6. git 代码提交到github 回滚到上一版本

    1.项目所在目录>git log(查看提交日志) commit idCodeAuthor: XXXXDate: Tue Mar 6 15:10:59 2018 +0800 commit idCo ...

  7. SVNKit操作SVN

    系统集成SVN(SVNKit操作SVN) 网址:https://svnkit.com/documentation.html 文档:https://svnkit.com/javadoc/index.ht ...

  8. 吴恩达老师机器学习课程chapter07——聚类

    吴恩达老师机器学习课程chapter07--聚类 本文是非计算机专业新手的自学笔记,高手勿喷. 本文仅作速查备忘之用,对应吴恩达(AndrewNg)老师的机器学期课程第十三章. 缺少重要推演,只能作为 ...

  9. HOW TO RENDER TO A TEXTURE ARRAY IN UNITY

    http://xdpixel.com/how-to-render-to-a-texture-array-in-unity/

  10. MySQL 5.0版本的安装步骤

    一.MYSQL的安装 1.以管理员的身份运行"mysql_setup.exe" 2.点击"Next" 3.选择"I accept the terms ...