我们后面的笔记我,打算直接用程序,加注释进行记录。日后若本人有疑问,可进行网络查询加以整理回复

package com.cionda.JavaDemo.dept;

public class JavaDemo {

    public static void main(String[] args) {
// TODO Auto-generated method stub
dept department = new dept("004","张三");//声明并实例化对象
System.out.println(department.deptInfo());//引用对象中的deptInfo方法,并打印返回值
System.out.println(new dept("003","李四","北京").deptInfo());//这里打印的是匿名对象中的deptInfo方法,使用完毕后,匿名对象即成为垃圾
//我们可以尝试再次打印department.deptInfo
System.out.println(department.deptInfo());
}
}
package com.cionda.JavaDemo.dept;
/**
*
* @author CionDa *
*
*/
public class dept {//创建部门类
/***
* 日常开发中,我们的成员变量都要用关键字private进行保护
* 成员变量是写在类里面的
* 而局部变量是写在方法体里面的
*/
private String deptno;//员工ID编号
private String deptname;//员工名字
private String deptloc;//部门地点
public dept() {//构造方法
/***
* 1、构造方法的名称必须和所在的类名称完全一样,就连大小写也要一样。
* 2、构造方法不要写返回值类型,连void都不写。
* 3、构造方法不能return一个具体的返回值。
* 4、如果没有编写任何构造方法,那么编译器将默认会赠送一个构造方法,没有参数、方法体什么事情都不会做。
* 5、一旦编写了至少一个构造方法,那么编译器将不再赠送。
*/
this(null,null,null);//减少代码的重复性,调用形参最多的一个构造方法来使用
}
public dept(String deptno,String deptname) {//构造方法重载
/***
* (1)概述方法名相同,与返回值类型无关(构造方法没有返回值),只看参数列表
* (2)注意事项
* 如果没有给出构造方法,系统将自动提供一个构造方法
* 如果给了构造方法,系统将不再提供构造方法
* 所以最好一直写出无参构造方法public dept()
*/
this(deptno,deptname,null);
}
public dept(String deptno,String deptname,String deptloc) {//这是一个形参最多的一个构造方法
this.deptno = deptno;//this关键字指向的是同一个类中的对象
/***
* 如果这里我们不用this
* 我们的编译器会误认为,等号左边和右边是同一个对象,输出所有结果为null
* 为了验证,我们可以拷贝代码进行修改
*
* 我们的this关键字,这里还可以指向同一个类中的方法
* 例如:上面两个构造方法调用这个构造方法一样
* 注意:
* 我们在调用this关键字使用方法时避免进入死循环
* 例如:
* public dept() {
* this(null,null,null);
* }
* public dept(String deptno,String deptname,String deptloc) {
* this();
* }
* 这样会造成两个方法相互调用,没有停止值,特别是构造方法。没有返回值。最容易进入死循环
*/
this.deptname = deptname;
this.deptloc = deptloc;
} public String deptInfo() {
return "员工号:"+this.deptno+"\n员工名字:"+this.deptname+"\n部门地址:"+this.deptloc;
}
/***
* ①我们可以在构造方法里进行对象的赋值
* ②也可以用getter,setter来进行对象的赋值
* 例如以下代码段。
* 构造函数是用于初始化类的属性,且只有在创建对象时才会调用构造函数,用于给对象分配地址
* 无参的构造函数,创建对象时默认调用,当程序没有明确写出有参的构造函数,系统会默认的创建一个。
* 有参的构造函数,创建对象时传进参数。
* setter方法,是对象引用调用setter方法,并传入参数。
* getter方法,对象调用getter方法,获取对象属性的值。
* 区别:
* 构造方法只有在创建对象时才会被“系统”调用且只调用一次, 而getter和setter方法是随时可以被“对象”调用
* 构造方法不能获取对象属性的值, 而getter可以获取对象的属性值
*/
// public String getDeptno() {
// return deptno;
// }
// public void setDeptno(String deptno) {
// this.deptno = deptno;
// }
// public String getDeptname() {
// return deptname;
// }
// public void setDeptname(String deptname) {
// this.deptname = deptname;
// }
// public String getDeptloc() {
// return deptloc;
// }
// public void setDeptloc(String deptloc) {
// this.deptloc = deptloc;
// }
}

感谢阿里云开发者社区,让我有整套系统的Java学习教程

同时,感谢博客园,让我有一个免费的博客,并让我做笔记学习!!

跟着阿里学JavaDay07——Java基础语法(五)的更多相关文章

  1. 跟着阿里学JavaDay04——Java基础语法(二)

    一.Java运算符 运算符的简介 所有的程序开发,都是对数字的进行处理.而对数字的处理,一定会存在所谓的操作模式,而这些操作模式就被称为运算符. 算术运算符 对于算术运算符,我们主要掌握++,--的运 ...

  2. 跟着阿里学JavaDay06——Java基础语法(四)

    一.方法 方法执行到return语句后,这个方法的执行就结束了,方法可以有返回值,但可以不用这个返回值.方法首先要定义,然后才能调用. public class TestMethod{ public ...

  3. 简明易懂,将细节隐藏,面向新手树立web开发概念——学完Java基础语法,超快速上手springboot+mybatiJavaWeb开发

    简明易懂,将细节隐藏,面向新手树立web开发概念 --学完Java基础语法,超快速上手JavaWeb开发 Web本质(先忽视各种协议) Web应用可以理解为浏览器和服务器之间的交互. 我们可以看一个简 ...

  4. 跟着阿里学JavaDay02——Java编程起步

    几乎所有语言的第一个程序都是"HelloWorld" 就像所有单片机初学者一样,点亮第一个LED灯开始 而起初我们编写/学习Java程序,都是通过记事本来编写的,这里推荐一个Edi ...

  5. 跟着阿里学JavaDay01——Java编程环境搭建

    一.下载并完成JDK的安装 我们要学习Java就需要下载JDK.因为JDK是Java的开发工具. JDK的获取可以通过官方网站下载:JDK下载地址(这里我们下载Java SE10的版本) JDK下载完 ...

  6. Java基础语法<五> 大数值BigInteger BigDecimal

    笔记整理 来源于<Java核心技术卷 I > <Java编程思想> 如果基本的整数和浮点数精度不能够满足需求,那么可以使用java.math包中的两个很有平有用的类:BigIn ...

  7. 001 01 Android 零基础入门 01 Java基础语法 01 Java初识 01 导学

    001 01 Android 零基础入门 01 Java基础语法 01 Java初识 01 导学 welcome to Java World 欢迎来到Java世界 一起领略Java编程世界的奥秘与奥妙 ...

  8. 第3天 Java基础语法

    第3天 Java基础语法 今日内容介绍 引用数据数据类型(Scanner.Random) 流程控制语句(if.for.while.dowhile.break.continue) 引用数据类型 Scan ...

  9. JavaSE基础(三)--Java基础语法

    Java 基础语法 一个 Java 程序可以认为是一系列对象的集合,而这些对象通过调用彼此的方法来协同工作.下面简要介绍下类.对象.方法和实例变量的概念. 对象:对象是类的一个实例,有状态和行为.例如 ...

随机推荐

  1. 第六届蓝桥杯JavaC组省赛真题

    解题代码部分来自网友,如果有不对的地方,欢迎各位大佬评论 题目1.隔行变色 隔行变色 Excel表的格子很多,为了避免把某行的数据和相邻行混淆,可以采用隔行变色的样式. 小明设计的样式为:第1行蓝色, ...

  2. java实现第四届蓝桥杯有理数类

    有理数类 题目描述 有理数就是可以表示为两个整数的比值的数字.一般情况下,我们用近似的小数表示.但有些时候,不允许出现误差,必须用两个整数来表示一个有理数. 这时,我们可以建立一个"有理数类 ...

  3. OV2640读ID全是FF问题

    最近刚好在Cyclone IV上通过LVDS把一个7寸的屏点亮,赶着热度,淘宝买了OV2640这个摄像头模块,初始化因为用Vrilog比C复杂得多,易调试性不如C,所以使用STM32初始化,模块有F3 ...

  4. JAVA第三次blog总结

    JAVA第三次blog总结 0.前言 这是我们在博客园上第三次写博客,也是本学期最后一次的JAVA学习大总结.现在我们的JAVA已经接近尾声了,对于编程思想和方法的改变依旧是难点,但是经过这一段时间的 ...

  5. JVM中堆的介绍

    一.堆的概述 一个JVM实例只有一个堆内存,堆也是Java内存管理的核心区域,堆在JVM启动的时候创建,其空间大小也被创建,是JVM中最大的一块内存空间,所有线程共享Java堆,物理上不连续的逻辑上连 ...

  6. Linux系统如何设置开机自动运行脚本?

    大家好,我是良许. 在工作中,我们经常有个需求,那就是在系统启动之后,自动启动某个脚本或服务.在 Windows 下,我们有很多方法可以设置开机启动,但在 Linux 系统下我们需要如何操作呢? Li ...

  7. 【华为云技术分享】数据库开发:MySQL Seconds_Behind_Master简要分析

    [摘要]对于mysql主备实例,seconds_behind_master是衡量master与slave之间延时的一个重要参数.通过在slave上执行"show slave status;& ...

  8. (十一)Maven运行TestNG的testcase 两种方式:testng.xml和testngCase.java

    原文:https://blog.csdn.net/wwhrestarting/article/details/46596869?utm_source=copy 1.通过maven-surefire-p ...

  9. idea出现 淇℃伅 乱码

    问题:我是idea出现 淇℃伅 乱码, 解决:修改 tomcat 下的 logging.properties这个文件 为 GBK 就好了. 参考:https://blog.csdn.net/weixi ...

  10. 贪吃蛇游戏(printf输出C语言版本)

    这一次我们应用printf输出实现一个经典的小游戏—贪吃蛇,主要难点是小蛇数据如何存储.如何实现转弯的效果.吃到食物后如何增加长度. 1 构造小蛇 首先,在画面中显示一条静止的小蛇.二维数组canva ...