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

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. 类似-Xms、-Xmn这些参数的含义:

    类似-Xms.-Xmn这些参数的含义: 答: 堆内存分配: JVM初始分配的内存由-Xms指定,默认是物理内存的1/64 JVM最大分配的内存由-Xmx指定,默认是物理内存的1/4 默认空余堆内存小于 ...

  2. Centos7.3 搭建KVM 命令安装VM虚拟机

      操作系统:centos7.3   一.安装KVM 1. 验证CPU是否支持KVM:如果结果中有vmx(Intel)或svm(AMD)字样,就说明CPU的支持的. egrep '(vmx|svm)' ...

  3. 96题--不同的二叉搜索树(java、中等难度)

    题目描述:给定一个整数 n,求以 1 ... n 为节点组成的二叉搜索树有多少种? 示例如下: 分析:本题可用动态规划的方法求解. 设 dp[n] 表示以 1 ... n 为节点组成的二叉搜索树的种类 ...

  4. gitee+picgo搭建个人博客图床

    gitee+picgo搭建个人博客图床 准备 首先需要去码云注册一个账号,并新建一个仓库.接着下载PicGO并安装好. 过程 点击左下方的插件设置. image 在搜索框中输入gitee搜索插件,安装 ...

  5. oracle使用+简写左关联出现的结果集不一致问题

    这是使用(+)的sql语句(已简写) select a.id,b.num from a,b where a.id=b.id(+) and b.num>10 这是使用left join的sql语句 ...

  6. Asp.Net Core入门之自定义服务注册

    谈到服务注册,首先我们先了解一下服务注册时使用的三种方式,也代表了不同的服务生命周期: AddTransient AddScoped AddSingleton AddSingleton生命周期最长,其 ...

  7. Lavarel 执行:php artisan migrate时报错

    错误如下: 执行:php artisan migrate时报错: [PDOException]SQLSTATE[HY000] [2002] Connection refused 解决办法: 第一步:. ...

  8. Ultra-QuickSort (求逆序数+离散化处理)、Cows、Stars【树状数组】

    一.Ultra-QuickSort(树状数组求逆序数) 题目链接(点击) Ultra-QuickSort Time Limit: 7000MS   Memory Limit: 65536K Total ...

  9. vue-toy: 200行代码模拟Vue实现

    vue-toy 200行左右代码模拟vue实现,视图渲染部分使用React来代替Snabbdom,欢迎Star. 项目地址:https://github.com/bplok20010/vue-toy ...

  10. 简单梳理JavaScript垃圾回收机制

    JavaScript具有自动垃圾回收机制,即执行环境会负责管理代码执行过程中使用地内存. 这种垃圾回收机制的原理很简单:找出那些不再继续使用的变量,然后释放其占用的内存.为此,垃圾收集器会按照固定的时 ...