尚硅谷例程解析

day06

  • 一维数组的定义
  • 一维数组元素的调用
  • 好玩的点:arr[index[i]];一个数组的元素值作为另一个数组的索引。
int[] arr = new int[] {
    
     8, 2, 1, 0, 3 };

int[] index = new int[] {
    
     2, 0, 3, 2, 4, 0, 1, 3, 2, 3, 3 };

for (int i = 0; i < index.length; i++) {
    
    
			tel += arr[index[i]];
		}
  • Scanner类的使用
    创建一个实例,使用.来调用方法,下面的代码是最简单的一个程序
import java.util.Scanner;
Scanner scan = new Scanner(System.in);
System.out.println(scan.nextInt());

day07

  • 二维数组所有元素总和,采取二重循环的方式,注意第二个循环的条件
for(int i = 0;i < arr.length;i++){
    
    
			for(int j = 0;j < arr[i].length;j++){
    
    
				sum += arr[i][j];
			}
		}
  • 注意数组名的赋值不是表示复制,而是表示两个数组名指向堆里面的同一个地址
  • 数组的工具类(Array.xXX)
  • 杨辉三角
  • 冒泡排序(算法层面)
  • 快速排序(算法层面)

day08

  • 对象数组的建立
Student[] stus = new Student[10];  //String[] arr = new String[10];
		
		for(int i = 0;i < stus.length;i++){
    
    
			//给数组元素赋值
			stus[i] = new Student();
			//给Student对象的属性赋值
			stus[i].number = (i + 1);
			//年级:[1,6]
			stus[i].state = (int)(Math.random() * (6 - 1 + 1) + 1);
			//成绩:[0,100]
			stus[i].score = (int)(Math.random() * (100 - 0 + 1));
		}
  • 随机数的生成:使用Math类
int max=100,min=1;
 int ran2 = (int) (Math.random()*(max-min)+min); 

day09

  • 参数的值传递,将对象作为参数
  • 匿名对象
  • 可变形参
  • 递归方法

day10

  • this关键字
  • 封装性(private)

day11

  • 继承性

  • 方法的重写(区别于重载)

  • 权限修饰符

  • super关键字
    如果子类和父类里面定义了同名变量,那么仅仅用变量名去调用就会产生问题,所以就要用this和super关键字进行区分
    super调用构造器:调用this()和super()只能是二选一,默认的是super()

  • (对象的)多态性:父类的引用指向子类的对象
    People p1 = new Man()
    调用子父类同名同参数的方法的时候,实际执行的是子类重写父类的方法(虚拟方法调用)
    编译看左边,执行看右边

  • instanceof
    判断a是不是b的实例 可以用在控制向下转型

  • Object类
    Object类是所有类的根父类

  • equals和==操作符
    = = 是一个运算符,可以对一般的数据结构(比较值),也可以对引用数据结构(比较地址)
    equals是一个方法,必须通过一个实例来调用,未经过改写,继承的是object类里面的方法(比较地址),如果是要比较内容,就要对equals方法进行重写(也可以自动生成)

  • toString方法: 方法可把一个 Number 对象转换为一个字符串,并返回结果

  • 包装类: 将基本数据类型“包装”成类

以下就不按照dayxx来写了

static

设计模式

  • 单例饱汉
  • 单例饿汉

main

代码块

final关键字

抽象类和抽象方法

  • 抽象类不可实例化
  • 抽象类中构造器便于子类对象实例化用
  • 抽象方法没有方法体
  • 包含抽象方法的类一定是抽象类,抽象类里面可以没有抽象方法
  • 子类必须重写父类中所有的抽象方法,才能实例化

接口

  • 接口可以实现多继承的效果,接口和类是一个并列关系
  • 接口只能声明全局常量(pub sta fin,可以省略)和抽象方法(pub abs ,可以省略)(jdk 7前)
  • 接口里面不可以定义构造器,接口不可以实例化
  • 实现类对接口方法的“重写”我们一般都称之为实现
    在这里插入图片描述
  • 接口和接口之间可以是多继承
  • 接口的本质是契约,规范
    在这里插入图片描述
    直接点击这里可以调出模板

异常处理

猜你喜欢

转载自blog.csdn.net/KafenWong/article/details/112333077
今日推荐