文章分类 - Java
摘要:final关键字面试题 程序示例 /* final: 被final修饰的局部变量是基本数据类型的时候,不可以修改值 被final修饰的局部变量是引用数据类型的时候,该对象的地址值是无法改变的, 但是引用堆内存中的变量是可以发生改变。 */ class Student{ int age = 18; }
阅读全文
摘要:final关键字 final关键字概述 程序示例 /* 我们如果说父类的东西不想让子类去继承: 可以使用private修饰 由于继承方法中有一个现象:方法重写 所以,当方法可以被重写的时候,父类原本的方法还在,但是调用是子类重写后的方法, 如果我依旧想保留父类原本的方法,不想让子类重写,但是呢,我想
阅读全文
摘要:方法重写概述 当子类中的方法与父类中的方法一样的时候,内部实现不一样这种现象我们称之为方法的重写,方法的覆盖 重写的定义: 子类中的方法名与形参列表以及返回值类型都和父类一样(方法声明一样),只是内部实现不一样。 方法重写的应用: 当子类需要父类的功能,而功能主体子类有自己特有内容时,可以重写父类中
阅读全文
摘要:程序示例: /* 继承与成员方法的关系: 1、当子类中的方法与父类中的方法不同的名字的时候 根据调用方法的名字不同,调用的方法也不同 2、当子类中的方法与父类中的方法名字一样的时候 1)先在本类中查找,看看有没有方法,如果有就直接调用 2)如果本类中没有对应名字的方法,就去父类中找 3)如果在父类中
阅读全文
摘要:继承中构造方法的关系 要想初始化子类,就必须初始化父类,而初始化调用的是构造方法 子类中所有的构造方法默认都会访问父类中空参数的构造方法, 因为子类中所有的构造方法的第一条语句都会默认含有一个访问父类的无参构造方法的super() 要想初始化子类,就必须初始化父类,为什么呢? 因为子类会继承父类中的
阅读全文
摘要:super关键字 super的用法和this很像 this代表本类对应的引用。 super代表父类存储空间的标识(可以理解为父类引用) super与this的使用格式: 访问成员变量: super.成员变量 (访问的是直接父类的成员变量)this.成员变量 (访问的是本类中成员变量,可以是访问继承自
阅读全文
摘要:继承中成员变量的关系 结论:(访问变量遵循就近原则) 在子类方法中访问一个变量 首先在子类局部范围找 然后在子类成员范围找 最后在父类成员范围找(肯定不能访问到父类局部范围) 如果还是没有就报错。(不考虑父亲的父亲…) 程序示例 /* 继承中的成员变量的关系 当子类的成员变量与父类的成员变量名字一致
阅读全文
摘要:使用继承的注意事项 子类只能继承父类的所有非私有的成员(成员变量和成员方法) 体现了继承的另一个弊端:打破了封装性 子类可以继承父类的构造方法吗? 要想初始化子类,就必须先初始化父类 子类不能继承父类的构造方法,但是可以通过super(后面讲)关键字去访问父类构造方法。 不要为了部分的功能特地的去使
阅读全文
摘要:继承的特点 程序示例 /* 继承有哪些特点: 1、针对于类来说,java它只支持单继承,不支持多继承 一个类只能有一个父类,不可以有多个父类。 class SubDemo extends Demo{} //√ class SubDemo extends Demo1,Demo2...//× 2、jav
阅读全文
摘要:继承的优缺点 继承的优点 提高了代码的复用性 多个类相同的成员可以放到同一个类中 提高了代码的维护性 如果功能的代码需要修改,修改一处即可 让类与类之间产生了关系,是多态的前提 继承的缺点 提高了类的耦合性 设计原则: 高内聚低耦合 简单的理解: 内聚就是自己完成某件事情的能力。 耦合就是类与类之间
阅读全文
摘要:继承概述 多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继承那个类即可。 通过extends关键字可以实现类与类的继承 格式:class 子类名 extends 父类名 {} 单独的这个类称为父类,基类或者超类; 这多个类可以称为子类或者派生类。
阅读全文
摘要:代码块的执行顺序 讲解代码块的目的:今后面试的时候,会有相关程序题,需要熟悉不同的代码块的执行顺序 代码块: 在Java中,使用{}括起来的代码被称为代码块 根据其位置和声明的不同,可以分为 局部代码块(当作正常的代码看待) 格式:只在方法中出现,使用大括号括起来的代码叫局部代码块 优点:使用完毕及
阅读全文
摘要:通过API学习Math类 程序引例 /* 根据帮助文档使用Math类 Math:Math类包含执行基本数字运算的方法,如基本指数,对数,平方根和三角函数。 属于哪个包下面的(看使用该类需不需要导包): 注意:今后,发现一个类在java.lang包下的时候,在代码中时,不需要导包 Math类没有构造方
阅读全文
摘要:使用Java提供的API(官网可以下载) 如何使用帮助文档 找到文档,打开文档 点击显示,找到索引,出现输入框 你应该知道你找谁?举例:Scanner 看这个类的结构(需不需要导包:一个类在java.lang包下的时候不需要导包) 成员变量 字段 构造方法 构造方法 成员方法 方法 看这个类的说明
阅读全文
摘要:制作帮助文档(API) 文档注释: 格式:/** ... */ 如何通过文档注释制作一个说明书呢? 写一个工具类 在工具类中加入文档注释 怎么加? 请看ArrayTool中的文档注释 加什么东西呢? 作者,版本,方法中参数,返回值等等 怎么用呢? 在DOS命令行窗口输入 javadoc -d 目录
阅读全文
摘要:示例:制作数组工具类(ArrayTool) 格式: /** 工具类要把无参构造方法私有化然后工具类的方法用static修饰 * 这样别人在使用时就只能通过类名来调用你的工具类的方法了. * *格式: * 首先在最前面通过文档注释写出这是一个具有什么功能的工具类 * 然后加上 @author 作者名
阅读全文
摘要:/* 现在我们来详细解剖一下HelloWorld中的main方法 public:公共的,访问权限最大,因为要被JVM识别所编译,所以权限要够大 class:java的基本单位类,class是定义一个类的关键字 MainDemo:类名,符合标识符的命名规则 static:静态的,属于类的本身,要被JV
阅读全文
摘要:例题 将类作为数据类型定义成员变量、将类作为引用数据类型传参 /* 商品类别类: 类别编号,类别名称 */ public class GoodsKind { private String kindId; private String kingName; public GoodsKind() { }
阅读全文
摘要:static关键字 程序引例 /* 定义一个人的类 经过测试发现,我们举例子的时候,都是中国人,国籍都一样,都是中国 一样的国籍,每次创建的时候,都会在堆内存开辟一个这样的变量空间 总觉得有点浪费。 有没有什么办法,让所有一样国籍的人共用一个国籍的值 针对多个对象拥有共同的成员变量,值是一样的时候
阅读全文
摘要:练习题 /* 定义一个类Demo,其中定义一个求两个数据和的方法,定义一个测试了Test,进行测试。 */ class Demo { //第一种方式: // public int sum() { // int a = 11; // int b = 22; // int c = a + b; // r
阅读全文

浙公网安备 33010602011771号