Day05:

用 class 定义一个类,默认情况下 类从 Objcet 继承。

也可以用关键字 extends 指定父类。

java 的三种常用变量 : 类变量,实例变量,局部变量。

实例变量和局部变量几乎相同,主要区别在于实例变量在类中定义,局部变量在方法中定义。

实例变量:在类中,方法外定义声明,且没有被关键字 static 修饰的变量。

类变量 适用于整个类,适合用于在同一个类的不同对象之间的共享信息或者记录级别信息。

类变量:使用关键字 static 来声明类变量。

定义方法有4个基本部分:

方法名

参数列表(形参,实参)

方法返回的对象类型或者基本数据类型(返回值类型)

方法体

除非返回类型声明 void 否则方法执行完成后,将返回某种类型值。必须在方法出口点使用关键字 return 返回这个值。

关键字 this :引用当前的对象或者实例变量。

当引用变量时,java是从里面的作用域向外需找其定义。

类方法:可以被任何实例使用,也可以被其他类使用,调用时不需要实例,要用关键字 static 修饰。

实例方法:只能由实例对象调用。

每个 java 程序都有一个 main 方法,main方法是一个程序的入口,是一个类方法。

public 公共的

static  类方法

void   没有返回值

String[] args  接收一个String 类型数组

将类作为对象处理必须放在 main 方法中。

重载:方法名相同,方法的参数类型或者参数个数不一样。(方法返回值类型必须相同)

构造方法:在对象被创建(构造)时调用。

构造方法不能直接调用,使用 new 对象时,java会为对象分配内存,初始化对象的实例变量(赋初始值或者默认值),调用其中一个构造方法。

构造方法初始化对象。

构造方法:1.名称与类名相同   2.没有返回值类型   3.不能用 return 返回值

当类没有写构造方法时,系统会默认一个无参数的空构造方法,当重载这个构造方法后,这个无参数构造方法会消失。

重写(覆盖):子类根据需要对父类的方法进行重写,重写必须和被重写方法具有相同的方法名称,参数列表,返回值类型重写方法不能使用比被重写方法更严格的访问权限。

子类对象被 new 出来时会包含一个父类对象。

关键字 this :引用自身对象,this() 是在自己的构造方法中根据不同参数调用自身其他不同(重载)的构造方法。(this()只能在出现在构造方法中,而且必须出现在该构造方法中的第一句)

可以通过 this.方法名或者变量名,在该方法中调用自身类中的其他实例变量和实例方法。

关键字 super:对父类的引用,用法与 this 相同,只是 super 是对父类的引用。

super() 是在子类的构造方法中根据不同参数调用父类其他不同(重载)的构造方法。(super()只能在出现在子类构造方法中,而且必须出现在该子类构造方法中的第一句)

如果父类有一个无参数的构造方法,那么子类的构造方法中没有指定有参数的父类构造方法就会默认有一个super();,如果父类没有空参数的构造方法,子类就要在构造方法中指定父类的有参数构造方法。

可以通过 super.方法名或者变量名,在该方法中调用父类中的其他实例变量和实例方法。

结束方法:结束方法的功能几乎与构造方法相反。构造方法用于初始化,结束方法在对象被垃圾收集器删除以释放其占用的内存之前被调用

结束方法是 finalize() 。Objcet 类定义了一个默认的结束方法,该方法不执行任何操作。要为类创建结束方法,可以重写(覆盖)finalize()方法

结束方法内应指定要清理的对象,变量,将它们设定为 unll ,等待垃圾收集器清理,需要时可以调用父类的结束方法。

Object 类:所有类的根基类,object类的所有方法都可以被对象(数组)使用和重写(覆盖)

Object中的几个常用方法:

equals():

返回值类型:boolean

指示其它某个对象是否与这个对象相等。

equals()方法默认是比较两个对象是否是同一对象

== 比较的是两个对象的地址,检查是否是同一个对象

String,Date等类重写了equals() 方法,比较的是两个对象的值,检查内容

getClass() :

返回值类型:Class<?>

返回这个Object的运行类。

对象.getClass().getName();

获得对象所在类的类名。

getClass() 和 getName() 都是Object 类中定义的方法

toString() :

返回值类型:String

返回这个对象的字符串表现。

toString()方法默认返回对象名加上该对象的哈希码

21天学通Java学习笔记-Day05相关推荐

  1. 21天学通Java学习笔记-Day01

    21天学通java 中文第6版 下载地址:点击打开链接 Day01: 命令行查看和设置classpath: 查看:echo %classpath% 设置:set classpath = %classp ...

  2. 21天学通Java学习笔记-Day12(MYsql-JDBC)

    JDBC MYQL 基础: 用命令行进入MYSQL:shell > mysql -h host(主机) -u user(用户名) -p 回车,等待输入密码 退出MYSQL:mysql >  ...

  3. 21天学通Java学习笔记-Day04

    Day04: 静态数组是一组对象,每个元素都是一个对象,所以用 new 创建新的数组实例. class test{public static void main(String[]args){a[] a ...

  4. 21天学通Java学习笔记-Day02

    Day02: java 程序是由 类,对象 组成.对象和类是由 方法,变量组成.方法是由 语句,表达式 组成.表达式是由 运算符 组成. 3种变量: 实例变量:定义对象的属性. 类 变 量 : 定义类 ...

  5. 21天学通Java学习笔记-Day06

    Day06: 限定符: *限定符 public ,protected 和 private 用于控制类,方法和变量的访问 *限定符 static 用于创建类方法和类变量 *限定符 final 用于固定( ...

  6. 21天学通Java学习笔记-Day11(常用类)

    java 常用类(重点): String 类: String 类代表字符串.创建以后不能更变. public class tests { public static void main(String[ ...

  7. 21天学通Java学习笔记-Day10(网路编程)

    网路编程(重点): TCP 程序:Socket 程序,双方必须建立可靠连接 UTP 程序:数据报程序,建立的连接属于不可靠 开发第一个Socket 程序: 如果要进行网络程序的开发,首先需要两个类: ...

  8. 21天学通java第7版pdf_21天学通Java.第7版.pdf

    <21天学通Java(第7版)>是初学者学习Java编程语言的畅销经典教程,循序渐进地介绍了Java编程语言知识,并提供了丰富的实例和练习:同时全面涵盖了Java 8这一新标准以及与And ...

  9. 《21天学通Java(第6版)》—— 1.4 属性和行为

    本节书摘来异步社区<21天学通Java(第6版)>一书中的第1章,第1.4节,作者:[美]Rogers Cadenhead,更多章节内容可以访问云栖社区"异步社区"公众 ...

  10. 《21天学通Java(第7版)》—— 第2章 Java编程基础 2.1 语句和表达式

    本节书摘来异步社区<21天学通Java(第7版)>一书中的第2章,第2.1节,作者: [美]Rogers Cadenhead(罗格斯 卡登海德),更多章节内容可以访问云栖社区"异 ...

最新文章

  1. 归一化互相关Normalization cross correlation (NCC)
  2. 还在直接操作 Redis?赶快来试试这个
  3. 浅析强化学习及使用Policy Network实现自动化控制
  4. 微信公众号,商城开发
  5. UA STAT687 线性模型II 最小二乘理论3 广义最小二乘
  6. java.lang.ClassNotFoundException: javax.servlet.jsp.jstl.core.LoopTag
  7. mysql shell
  8. HTML + CSS 为何得不到编程界的认可?
  9. 氢离子浓度指数(ph值)
  10. 黑板课爬虫闯关之关卡二
  11. react 遍历渲染
  12. 使用jave(ffmpeg)将.amr音频转码成mp3
  13. eXtremeComponents使用总结--1(转载)
  14. 如何用Java解压缩WAR文件
  15. 产品能力提升|《金字塔原理》
  16. iText - OCR 截图识字 - 新版小幅更新
  17. java springboot activemq 邮件短信微服务,解决国际化服务的国内外兼容性问题,含各服务商调研情况...
  18. 题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个
第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下
的一半零一个。到第10天早上想再吃时,见
  19. 小程序如何获取后端的数据
  20. excel计算机基础知识考试题,2017年计算机excel基础考试题「附答案」

热门文章

  1. 传智播客java测试题_传智播客Java基础第二阶段习题
  2. 【考研高数 自用】高数第一章基础阶段思维导图
  3. matlab单机无限大系统_单机无穷大系统暂态仿真(完整).docx
  4. Oracle数据库SQL优化详解
  5. arduino:废旧光驱DIY激光雕刻机(完善中……)
  6. 2018年数学建模美赛B题做题思路和详细分析(五)
  7. 硬盘的接口,总线,协议知识点总结
  8. Pycharm安装numpy失败
  9. python模拟gps定位_python 模拟 GPS, $GPRMC $GPRMC
  10. 员工自动离职可以申请经济补偿吗