07 2021 档案
摘要:package cn.yyhl.day14; /* 在父子类的继承关系当中,创建子类对象,访问成员方法的规则: 创建的对象是谁,就优先用谁,如果没有则向上找。 注意: 无论是成员方法还是成员变量,如果没有都是向上找父类,绝对不会向下找子类的。 重写:(override) 概念:在继承关系中当中,方法
阅读全文
摘要:package cn.yyhl.day14; /* 局部变量: 直接写成员变量 本类的成员变量: this.成员变量 父类的成员变量: super.成员变量 */ public class ExtendsField02 { public static void main(String[] args)
阅读全文
摘要:package cn.yyhl.day14; /* 在父子类的继承关系中,如果成员变量重名,则创建子类对象时,访问有两种方式: 直接通过子类对象访问成员变量: 等号左边的是谁,就优先用谁,没有则向上找。 间接通过成员方法访问成员变量: 改方法属于谁,就优先用谁,没有则向上找。 */ public c
阅读全文
摘要:package cn.yyhl.day14; /* 在继承的关系中,“子类就是一个父类”。也就是说,子类可以被当做父类看待。 例如父类是员工,子类是讲师,那么“讲师就是一个员工”。关系:is-a 。 定义父类的格式:(就是定义一个普通的类) public class 父类名称{ //... } 定义
阅读全文
摘要:package cn.yyhl.day13; /* 题目: 计算在-10.8到5.9之间,绝对值大于6或者小于2.1的整数有多少个? 分析: 1既然已经确定了范围,就用for 2起点位置-10.8应该转为-10,两种办法: 2.1可以使用Math.ceil方法,向上(向正取整)取整 2.2可以强转成
阅读全文
摘要:package cn.yyhl.day13;/* java.util.Math类是数学相关的工具类,里面提供了大量的静态方法,完成与数学运算相关的操作。 public static double abs(double num):获取绝对值。有多种重载。 public static double ce
阅读全文
摘要:package cn.yyhl.day13; import java.util.Arrays; import java.util.Random; import java.util.Scanner; /* 题目: 1请使用Arrays相关的API,将一个随机的字符串中的所有字符进行升序排列,并倒叙打印
阅读全文
摘要:package cn.yyhl.day13; import java.util.Arrays; /* Java.util.Arrays是一个与数组相关的工具类,里面提供大量的静态方法,用来实现数组常见的操作。 public static String toString(数组):将参数数组变成字符串(
阅读全文
摘要:package cn.yyhl.day12; import java.util.Scanner; /* 题目:键盘输入一个字符串,并且统计其中各种字符出现的次数。 种类有:大写字母、小写字母、数字、其他。 */ public class StringCount { public static voi
阅读全文
摘要:package cn.yyhl.day12; /* 题目:定义一个方法,把数组{1,2,3}按照指定格式拼接成为一个字符串。格式参照如下:[word1#word2#word3]。 */ public class StringTest1 { public static void main(String
阅读全文
摘要:package cn.yyhl.day11; /* 分隔字符串的方法: public String[] split(String regex):按照参数的规则,将字符串切分成为若干部分。 注意事项: split方法的参数其实是一个正则表达式,如果要按照“.”进行切分,必须写成"\\."(两个反斜杠)
阅读全文
摘要:package cn.yyhl.day11; /* String当中与转换相关的常用的方法有: public char[] toCharArray():将当前字符串拆分成为字符数组作为返回值。 public byte[] getBytes():获得当前字符串底层的字节数组。 public Strin
阅读全文
摘要:package cn.yyhl.day11; /* 字符串的截取方法: public String substring(int index):截取从参数位置一直到字符串末尾,返回新字符串。 public String substring(int begin, int end):截取从begin开始,
阅读全文
摘要:package cn.yyhl.day10; /* Sting当中与获取相关的常用方法有: public int length():获取字符串当中含有的字符串个数,拿到字符串的长度。 public String concat(String str):将当前字符串和参数字符串拼接成为返回值新的字符串。
阅读全文
摘要:package cn.yyhl.day10; /* ==是进行对象地址值的比较,如果确实需要字符串的内容比较,可以使用两个方法: public boolean equals(Object obj):参数可以是任何对象,只有参数是一个字符串并且内容相同才会给true;否则返回false. 注意事项:
阅读全文
摘要:package cn.yyhl.day10; /* 字符串常量池:程序当中直接写上的双引号字符串,就在字符串常量池中。new的字符串不在常量池当中。 对于基本类型来说, ==是进行数值比较。 对于引用类型来说,==是进行【地址值】的比较。 */ public class String02Pool {
阅读全文
摘要:package cn.yyhl.day10; /* Java.lang.String类代表字符串。 API当中说:java程序中的所有字符串字面值(“如ABC”)都是作为此类的实例实现。 其实也就是说:程序当中所有的双引号字符串,都是String类的对象。(就算没有new,也照样是)。 字符串的特点
阅读全文
摘要:package cn.yyhl.day09; import java.util.ArrayList; import java.util.Random; /* 题目: 用一个大集合存入20个随机数字,然后筛选其中的偶数元素,放到小集合当中。 要求使用自定义的方法来实现筛选 */ public clas
阅读全文
摘要:package cn.yyhl.day09; import java.util.ArrayList; /* 题目: 定义以指定格式打印集合的方法。(ArrayList 类型作为参数), 使用{}括起来集合,使用@分隔每个元素 格式参照:{元素@元素@元素} */ public class Array
阅读全文
摘要:package cn.yyhl.day08; import java.util.ArrayList; /* 题目: 自定义4个学生对象,添加到集合,并遍历。 思路: 1自定义学生类,写全类的四个部分。 2创建一个集合,用来储存学生对象;泛型:<Student> 3遍历集和用for、size、get。
阅读全文
摘要:package cn.yyhl.day08; import java.util.ArrayList; import java.util.Random; /* 题目: 生成6个1~33之间的随机整数,添加到集合,并遍历集合。 思路: 1要生产随机数,需要使用Random类 2需要一个int类型的集合A
阅读全文
摘要:package cn.yyhl.day08; import java.util.ArrayList; /* 如果希望向集合ArrayList集合当中存储基本数据类型,必须使用基本数据类型对应的“包装类”: 基本数据类型 包装类 byte Byte short Short int integer 【特
阅读全文
摘要:package cn.yyhl.day08; import java.util.ArrayList; /* ArrayList当中的常用方法: public boolean add(E e):向集合当中添加元素,参数的类型与泛型一致。返回值代表添加是否成功 备注:对于ArrayList集合来说,ad
阅读全文
摘要:package cn.yyhl.day08; import java.util.ArrayList; /* 数组的长度不可发生改变。 但是ArrayList集合的长度是可以随意变化的。 对于ArrayList来说,有一个尖括号代表泛型。 泛型:也就是装在集合当中的所有元素,全都是统一的什么类型。 注
阅读全文
摘要:package cn.yyhl.day08; /* 题目: 定义一个数组,用来存储三个ObjectArray对象。 数组有一个缺点,一单创建,程序运行期间长度不可以发生改变。 */ public class ObjectArray01 { public static void main(String
阅读全文
摘要:package cn.yyhl.day07; import java.util.Random; import java.util.Scanner; /* 题目: 用代码模拟猜数字游戏。 思路: 1随机生成一个数字 2不确定需要猜多少次,所以循环写成死循环 3每次猜完之后需要提示猜中了,猜大了,猜小了
阅读全文
摘要:package cn.yyhl.day07; import java.util.Random; /* 题目要求: 根据int变量N的值,来获取随机数字,范围是[1,n],可以取到1也可以取到n 思路: 1定义一个变量n,随意赋值。 2使用Random的三个步骤:导包、创建、使用。 3如果n是10,那
阅读全文
摘要:package cn.yyhl.day07; import java.util.Random; /* Random类用来生成随机数字。使用起来也是三个步骤: 1导包 import java.util.Random; 2创建 Random 对象名称 = new Random();//小括号中留空即可
阅读全文
摘要:package cn.yyhl.day07; import java.util.Scanner; public class AnonymousObject03 { public static void main(String[] args) { /* 普通使用方法 Scanner sc = new
阅读全文
摘要:package cn.yyhl.day07; /* 创建对象的标准格式: 类名称 对象名 = new 类名称(); 匿名对象就是只有右边的对象,没有左边的名字和赋值运算符。 new类名称(); 注意事项:匿名对象只能使用唯一的一次,下次再用不得不再创建一个新对象 使用建议:如果确定有一个对象只需要使
阅读全文
摘要:package cn.yyhl.day07; import java.util.Scanner; /* 题目: 键盘输入三个int数字,然后求出其中的最大值。 思路: 1需要键盘输入就要用到Scanner类。 2需要三个int变量接收键盘输入的数字 3还需要一个变量仅限接收比较之后的最大值。 4打印
阅读全文
摘要:package cn.yyhl.day07; import java.util.Scanner; /* 题目: 键盘输入两个int数字,并且求出和值。 思路: 1需要键盘输入就要用到Scanner类 2需要两个变量接受键盘输入的值。 3还需要一个变量接收键盘输入的两个int数字的和值 4输出计算之后
阅读全文
摘要:package cn.yyhl.day07; import java.sql.SQLOutput; import java.util.Scanner; /* Scanner类的功能:可以实现键盘输入数据,到程序当中。 引用类型的一般使用步骤: 1导包 import 包路径.类名称 如果需要使用的目标
阅读全文
摘要:package cn.yyhl.day06; /* 一个标准的类通常要拥有以下四个组成部分: 1所以成员变量都要使用private关键字修饰。 2为每一个成员变量编写一对Getter/Setter方法。 3编写一个无参数的构造方法。 4编写一个全参数的构造方法。 这样标准的类也叫做Java Bean
阅读全文
摘要:package cn.yyhl.day06; /* 构造方法是专门用来创建对象的方法,当我们通过关键字new来创建对象时,其实就是在调用构造方法。 格式: public 类名称(参数类型 参数名称){ 方法体 } 注意事项: 1构造方法的名称必须和所在的类名称完全一样,包括大小写也要一样。 2构造方
阅读全文
摘要:package cn.yyhl.day06; /* 当方法的局部变量和类的成员变量重名的时候,根据就近原则,有限使用局部变量。 如果需要访问本类当中的成员变量,需要使用格式: this.成员变量名 “通过谁调用的方法,谁就是this” */ public class Student { String
阅读全文
摘要:package cn.yyhl.day06; import java.sql.SQLOutput; /* 问题描述:定义Person的年龄和姓名时,无法阻止不合理的数值被设置进来。 解决方案:用private关键字将需要保护的成员变量进行修饰。 一单使用了private进行修饰,那么本类当中任然可以
阅读全文
摘要:package cn.yyhl.day06; /* 面向对象三大特征:封装、继承、多态。 封装性在java当中的体现: 1方法就是一种封装。 2关键字private也是一种封装。 封装就是将一些细节信息隐藏起来,对于外界不可见。 */ public class ObjectFeature { pub
阅读全文
摘要:package cn.yyhl.day06; /* 1定义的位置不一样【重点】: 局部变量:写在方法的内部。 成员变量:写在方法的外部,直接写在类当中。 2作用范围不一样【重点】: 局部变量:只有方法当中才可以使用,出了方法之后就不能使用。 成员变量:整个类都可以使用。 3默认值不一样【重点】: 局
阅读全文
摘要:package cn.yyhl.day05; /* 通常情况下,一个类并不能直接使用,需要根据类创建一个对象,才能使用 1导包:也就是指出需要使用的类,在什么位置 import 包名称.类名称; inport.cn.yyhl.day04.ObjectStudentDefine; 对于和当前类属于同一
阅读全文
摘要:package cn.yyhl.day05; /* 定义一个类,用来模拟“学生”事物,其中就有两个组成部分: 属性(是什么): 姓名: 年龄: 行为(能做什么): 吃饭: 睡觉: 学习: 对应到java的类当中: 成员变量(属性): 数据类型 变量名: String name; 姓名 int age
阅读全文
摘要:package cn.yyhl.day05; import java.util.Arrays; /* 面向过程:当需要实现一个功能的时候,每一个具体的步骤都要亲力亲为,详细处理每一个细节 面向对象:当需要实现一个功能的时候,不关心具体的步骤,而是找一个已经具有该功能的人,来帮我做事情。 */ pub
阅读全文
摘要:package cn.yyhl.day05; /* 一个方法可以有0、1、多个参数;但是只能有0或者1个返回值,不能有多个返回值。 如果希望一个方法当中产生了多个结果数据进行返回,怎么办? 解决方案:使用一个数组作为返回值类型即可。 任何数据类型都能作为方法的参数类型,或者返回值类型。 数组作为方法
阅读全文
摘要:package cn.yyhl.day05; /* 数组可以作为方法的参数。 当调用方法的时候,向方法的小括号进行传参,传递进去的其实是数组的地址值 */ public class ArrayParam { public static void main(String[] args) { int[]
阅读全文
摘要:package cn.yyhl.day04; /* 数组元素的反转: 本来的样子:[ 1, 2, 3, 4, 5] 反转的样子:[5, 4, 3, 2, 1] 要求不能使用新数组,就用原来的唯一一个数组。 */ public class ArrayReverse { public static vo
阅读全文
摘要:package cn.yyhl.day04; /* 题目: 求一个数组当中的最大值 */ public class ArrayMax { public static void main(String[] args) { int[] array = { 5, 10, 8, 7, 20, 35, 24,
阅读全文
摘要:package cn.yyhl.day04; /* 遍历数组,说的就是对数组当中的每一个元素进行逐一、挨个处理。默认的处理方式就是打印输出。 */ public class ArrayTraversal { public static void main(String[] args) { int[]
阅读全文
摘要:package cn.yyhl.day04; /* 如何获取数组的长度,格式: 数组名称.length 这将会得到一个int数字,代表数字的长度。 数组一旦创建,程序运行期间,长度不可改变。 */ public class ArrayLength { public static void main(
阅读全文
摘要:package cn.yyhl.day04; /* 所有的引用类型变量都可以赋值为一个null值,但是代表其中什么都没有。 数组必须进行new初始化才能使用其中的元素。 如果只赋值了一个null,没有进行new创建 那么将会发生: 空指针异常:NUllPointerExcetion 原因:忘了new
阅读全文
摘要:package cn.yyhl.day04; /* 数组的索引编号从0开始,一直到数组的长度-1为止。 如果访问数组元素的时候,索引编号并不存在,那么将会发生 数组索引越界异常 ArrayIndexOutOfBoundsExcetion 原因:索引编号写错了。 解决方法:修改成为存在的正确索引编号。
阅读全文
摘要:java的内存划分图: 一个数组的内存划分图: 两个数组的内存划分图: 两个有关系数组的内存划分图:
阅读全文
摘要:package cn.yyhl.day04; /* 直接打印数组名称,得到的是数组对应的:内存地址哈希值。 二进制:01 十进制:0123456789 十六进制:0123456789abcdef 访问数组元素的格式:数组名称[索引值] 索引值:就是一个int数字,代表数组当中的元素编号。 【注意】:
阅读全文
摘要:package cn.yyhl.day03; /* 数组的概念:是一种容器,可以同时存放多个数据值。 数组的特点: 1数组是一种引用数据类型。 2数组当中的多个数据,类型必须统一。 3数组的长度在运行期间不可改变。 数组的初始化:在内存当中创建一个数组,并且向其中赋予一些默认值。 两种常见的初始化方
阅读全文
摘要:package cn.yyhl.day03; /* 题目要求: 比较两个数据是否相等 参数类型分别是两个byte类型,两个short类型,两个Int类型,两个long类型。 并在main方法中测试。 */ public class MethodOverloadSame { public static
阅读全文
摘要:package cn.yyhl.day03; /* 对于功能类似的方法来说,因为参数列表不一样,却需要记住那么多不同的方法名称太麻烦。 方法的重载(Overload):多个方法的名称一样,但是参数列表不一样。 好处:只需要记住唯一一个方法名称,就可以实现类似的多个功能。 方法重载与下列因素相关: 1
阅读全文

浙公网安备 33010602011771号