10 2020 档案
摘要:1 /* 2 方法覆盖重写的注意事项: 3 4 1. 必须保证父子类之间方法的名称相同,参数列表也相同。 5 @Override:写在方法前面,用来检测是不是有效的正确覆盖重写。 6 这个注解就算不写,只要满足要求,也是正确的方法覆盖重写。 7 8 2. 子类方法的返回值必须【小于等于】父类方法的返
阅读全文
摘要:1 public class Fu { 2 3 public void methodFu() { 4 System.out.println("父类方法执行!"); 5 } 6 7 public void method() { 8 System.out.println("父类重名方法执行!"); 9
阅读全文
摘要:1 public class Fu { 2 3 int num = 10; 4 5 } 1 public class Zi extends Fu { 2 3 int num = 20; 4 5 public void method() { 6 int num = 30; 7 System.out.p
阅读全文
摘要:1 public class Fu { 2 int numFu=10; 3 4 int num=100; 5 6 public void methodFu(){ 7 System.out.println(num); 8 } 9 } 1 public class Zi extends Fu { 2 3
阅读全文
摘要:1 /* 2 在继承的关系中,“子类就是一个父类”。也就是说,子类可以被当做父类看待。 3 例如父类是员工,子类是讲师,那么“讲师就是一个员工”。关系:is-a。(The teacher is an employee) 4 5 定义父类的格式:(一个普通的类定义) 6 public class 父类
阅读全文
摘要:1 /* 2 java.util.Math类是数学相关的工具类,里面提供了大量的静态方法,完成与数学运算相关的操作。 3 4 public static double abs(double num):获取绝对值。有多种重载。 5 public static double ceil(double nu
阅读全文
摘要:1 import java.util.Arrays; 2 3 /* 4 java.util.Arrays是一个与数组相关的工具类,里面提供了大量静态方法,用来实现数组常见的操作。 5 6 public static String toString(数组):将参数数组变成字符串(按照默认格式:[元素1
阅读全文
摘要:静态对象只初始化一次。静态代码块的格式是:public class 类名称 { static { // 静态代码块的内容 }}特点:当第一次用到本类时,静态代码块执行唯一的一次。静态内容总是优先于非静态,所以静态代码块比构造方法先执行。静态代码块的典型用途:用来一次性地对静态成员变量进行赋值。 1
阅读全文
摘要:1 public class MyClass { 2 3 int num; // 成员变量 4 static int numStatic; // 静态变量 5 6 // 成员方法 7 public void method() { 8 System.out.println("这是一个成员方法。");
阅读全文
摘要:public class Student { private int id; // 学号 private String name; // 姓名 private int age; // 年龄 static String room; // 所在教室 private static int idCounte
阅读全文
摘要:1 import java.util.Scanner; 2 3 /* 4 题目: 5 键盘输入一个字符串,并且统计其中各种字符出现的次数。 6 种类有:大写字母、小写字母、数字、其他 7 8 思路: 9 1. 既然用到键盘输入,肯定是Scanner 10 2. 键盘输入的是字符串,那么:String
阅读全文
摘要:1 /* 2 String当中与转换相关的常用方法有: 3 4 public char[] toCharArray():将当前字符串拆分成为字符数组作为返回值。 5 public byte[] getBytes():获得当前字符串底层的字节数组。 6 public String replace(Ch
阅读全文
摘要:1 1.二分查找法 2 /* 3 题目描述:给定一个数组,此数组满足两个条件,分为两段连续(递增)数字集合,第一个数肯定大于最后一个数,请返回两段数字交界处下标。 4 5 输入描述: 6 第一行 为数组中元素的数量 7 第二行 一个严格按照题目要求的数组如:70 80 90 1 20 30 8 9
阅读全文
摘要:1 /* 2 字符串的截取方法: 3 4 public String substring(int index):截取从参数位置一直到字符串末尾,返回新字符串。 5 public String substring(int begin, int end):截取从begin开始,一直到end结束,中间的字
阅读全文
摘要:1 /* 2 排序算法(升序): 3 要求: 第一行输入数组中的数字个数 4 第二行输入数组中的数字 5 第三行输出排序后的数组 6 7 1.先输入一个整型数字(用Scanner) 8 2.用for循环输入一个待排序的数组 9 3.写一个方法用来排序,返回排序后的数组 10 从[0]号开始与后面每一
阅读全文
摘要:1 /* 2 String当中与获取相关的常用方法有: 3 4 public int length():获取字符串当中含有的字符个数,拿到字符串长度。 5 public String concat(String str):将当前字符串和参数字符串拼接成为返回值新的字符串。 6 public char
阅读全文
摘要:1 /* 2 ==是进行对象的地址值比较,如果确实需要字符串的内容比较,可以使用两个方法: 3 4 public boolean equals(Object obj):参数可以是任何对象,只有参数是一个字符串并且内容相同才会给true;否则返回false。 5 注意事项: 6 1、任何对象都能用Ob
阅读全文
摘要:字符串常量池:程序当中直接写上的双引号字符串,就在字符串常量池中。对于基本类型来说,==是进行数值的比较。对于引用类型来说,==是进行【地址值】的比较。直接写的"abc"就是常量字符串 JVM在帮我们创建abc的时候,其实是把它化作了一个字节数组,再把字节数组的地址保存在 字符串常量池 当中的字符串
阅读全文
摘要:java.lang.String类代表字符串。API当中说,Java程序中的所有字符串字面值(如"abc")都作为此类的实例实现。其实就是说:程序当中所有的双引号字符串,都是String类的对象。(就算没有new,也照样是。)字符串的特点:1.字符串的内容永不可变。【重点】 2.正是因为字符串不可改
阅读全文
摘要:1 import java.util.ArrayList; 2 import java.util.Random; 3 4 /* 5 题目: 6 用一个大集合存入20个随机数字,然后筛选其中的偶数元素,放到小集合当中。 7 要求使用自定义的方法来实现筛选。 8 9 分析: 10 1. 需要创建一个大集
阅读全文
摘要:1 import java.util.ArrayList; 2 3 /* 4 题目: 5 定义以指定格式打印集合的方法(ArrayList类型作为参数),使用{}扩起集合,使用@分隔每个元素。 6 格式参照 {元素@元素@元素}。 7 8 1.写一个ArrayList集合,添加几个元素 9 2.写个
阅读全文
摘要:1 import java.util.ArrayList; 2 import java.util.Random; 3 4 /* 5 题目: 6 生成6个1~33之间的随机整数,添加到集合,并遍历集合。 7 8 思路: 9 1. 需要存储6个数字,创建一个集合,<Integer> 10 2. 产生随机
阅读全文
摘要:如果希望向集合ArrayList当中存储基本类型数据,必须使用基本类型对应的“包装类”。基本类型 包装类(引用类型,包装类都位于java.lang包下)byte Byteshort Shortint Integer 【特殊】long Longfloat Floatdouble Doublechar
阅读全文
摘要:1 import java.util.ArrayList; 2 3 /* 4 数组的长度不可以发生改变。 5 但是ArrayList集合的长度是可以随意变化的。 6 7 对于ArrayList来说,有一个尖括号<E>代表泛型。 8 泛型:也就是装在集合当中的所有元素,全都是统一的什么类型。 9 注意
阅读全文
摘要:1 /* 2 题目: 3 定义一个数组,用来存储3个Person对象。 4 5 数组有一个缺点:一旦创建,程序运行期间长度不可以发生改变。 6 */ 7 public class Demo01Array { 8 9 public static void main(String[] args) { 1
阅读全文
摘要:1 //从50-350中,遍历找出所有的质数 2 3 public class zhishu{ 4 public static void main(String[] args){ 5 for(int a=50;a<=350;a++){ 6 for(int b=2;b<=a;b++){ 7 if(b<
阅读全文
摘要:Random使用方法与Scanner类似:1、导包 2、创建 3、使用 获取一个随机的int数字(参数代表了范围,左闭右开区间):int num = r.nextInt(3) 实际上代表的含义是:[0,3),也就是0~2 1 //随机输出100个0~9之间的数 2 3 for(int i=0;i<1
阅读全文
摘要:1 /* 2 创建对象的标准格式: 3 类名称 对象名 = new 类名称(); 4 5 匿名对象就是只有右边的对象,没有左边的名字和赋值运算符。 6 new 类名称(); 7 8 注意事项:匿名对象只能使用唯一的一次,下次再用不得不再创建一个新对象。每个new都是在新建对象。 9 使用建议:如果确
阅读全文
摘要:API(Application Programming Interface),应用程序编程接口。Java API是一本程序员的字典,是JDK中提供给我们使用的类的说明文档。 第一,看包路径 第二,看构造方法 第三,看方法摘要 引用类型的一般使用步骤: 1. 导包import 包路径.类名称;如果需要
阅读全文
摘要:作用:在重名的情况下找到区分的效果。当方法的局部变量和类的成员变量重名的时候,根据“就近原则”,优先使用局部变量。如果需要访问本类当中的成员变量,需要使用格式:this.成员变量名 “通过谁调用的方法,谁就是this。” 1 /* 2 构造方法是专门用来创建对象的方法,当我们通过关键字new来创建对
阅读全文
摘要:1 /* 2 问题描述:定义Person的年龄时,无法阻止不合理的数值被设置进来。 3 解决方案:用private关键字将需要保护的成员变量进行修饰。 4 5 一旦使用了private进行修饰,那么本类当中仍然可以随意访问。 6 但是!超出了本类范围之外就不能再直接访问了。 7 8 间接访问priv
阅读全文
摘要:面向对象三大特征:封装、继承、多态。封装性在Java当中的体现:1. 方法就是一种封装2. 关键字private也是一种封装封装就是将一些细节信息隐藏起来,对于外界不可见。
阅读全文
摘要:1 /* 2 通常情况下,一个类并不能直接使用,需要根据类创建一个对象,才能使用。 3 4 1. 导包:也就是指出需要使用的类,在什么位置。 5 import 包名称.类名称; 6 import cn.itcast.day06.demo01.Student; 7 对于和当前类属于同一个包的情况,可以
阅读全文
摘要:1 import java.util.Arrays; //使用面向对象时自动生成的 2 3 /* 4 面向过程:当需要实现一个功能的时候,每一个具体的步骤都要亲力亲为,详细处理每一个细节。 5 面向对象:当需要实现一个功能的时候,不关心具体的步骤,而是找一个已经具有该功能的人,来帮我做事儿。 6 *
阅读全文
摘要:1 /* 2 数组可以作为方法的参数。 3 当调用方法的时候,向方法的小括号进行传参,传递进去的其实是数组的地址值。 4 */ 5 public class Demo01ArrayParam { 6 7 public static void main(String[] args) { 8 int[]
阅读全文
摘要:1 /* 2 数组元素的反转: 3 本来的样子:[1, 2, 3, 4] 4 之后的样子:[4, 3, 2, 1] 5 6 要求不能使用新数组,就用原来的唯一一个数组。 7 */ 8 public class Demo07ArrayReverse { 9 10 public static void
阅读全文
摘要:1 /* 2 遍历数组,说的就是对数组当中的每一个元素进行逐一、挨个儿处理。默认的处理方式就是打印输出。 3 */ 4 public class Demo04Array { 5 6 public static void main(String[] args) { 7 int[] array = {
阅读全文
摘要:1 /* 2 如何获取数组的长度,格式: 3 数组名称.length 4 5 这将会得到一个int数字,代表数组的长度。 6 7 数组一旦创建,程序运行期间,长度不可改变。 8 */ 9 public class Demo03ArrayLength { 10 11 public static voi
阅读全文
摘要:1、如果访问数组元素的时候,索引编号并不存在,那么将会发生数组索引越界异常(ArrayIndexOutOfBoundsException)2、(所有的引用类型变量,都可以赋值为一个null值。但是代表其中什么都没有。) 数组必须进行new初始化才能使用其中的元素。如果只是赋值了一个null,没有进行
阅读全文
摘要:最后如果再访问数组A,得到的结果是 0、100、200 因为两个引用名称(arrayA和arrayB)就是同一个数组,同一个地址
阅读全文
浙公网安备 33010602011771号