![](https://img-blog.csdnimg.cn/2021071610171991.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
java
note
iteval
大把时间迷茫,几个瞬间成长
展开
-
java 多态
一、多态 – 多种状态 1. 多态要有继承 Son extends Father 2. 多态要有重写方法 @Override 3. 多态要有父类的引用指向子类实例对象 Father f = new Son() 多态扩展性极强,只要达到了上面三点,随便换着 new 二、abstract 抽象类 类和方法前面加 abstract 就是抽象方法和抽象类,抽象类的方法必须实现 三、interface 接口 接口需要用 implements 实现 ...原创 2021-07-19 22:13:18 · 37 阅读 · 0 评论 -
instanceof 和 对象转型
一、instanceof 判断某个对象是否属于某个类 father1 instanceof Father; // true // 如果有子类继承父类的话 son instanceof Father; // true 二、对象转型 子转父 ==> 自动转(向下转型) 父转子 ==> 强转(向上转型) ...原创 2021-07-19 21:19:58 · 73 阅读 · 0 评论 -
17 - 引用类型比较内容
引用数据类型比较 引用数据类型直接比较一定是 false --> 比较的是它俩的地址 Animail a1 = new Animal(); Animail a2 = new Animal(); System.out.println(a1 == a2); //false 特殊的 String String s1 = "a"; String s2 = "a"; System.out.println(s1 == s2); // true ==> 比俩的值 String s3 = new Stri原创 2021-07-14 09:54:44 · 83 阅读 · 0 评论 -
16 - java 类加载顺序
类的加载顺序 类对象、静态变量是存在元空间的方法区,实例对象是new出来的,放在堆里面的 一个类加载到内存的完整过程 加载父类 --> 加载子类 --> 构造父类 --> 构造子类 class文件要从磁盘加载到内存形成对象 内存靠地址去取寻址 – 随机存储 磁盘只能通过转动一直找那个点 – 顺序存储 ...原创 2021-07-14 09:53:32 · 57 阅读 · 0 评论 -
15 - java 继承
java继承 This ==> Son Super ==> Father Object 类是所有类的顶级父类 只要创建一个类默认都会继承这个顶级父类 在子类继承父类里面 构造器必须先构造一个父类(先有爸爸,才有儿子),而且必须首先构造父类,必须是第一行 如果子类继承父类,子类的 构造器里面什么都没写,默认给你加上 super() ...原创 2021-07-14 09:52:03 · 53 阅读 · 0 评论 -
02 - java 标识符命名规范
一、java总体命名规范 名称只能由字母、数字、下划线、$符号组成 不能以数字开头 名称不能使用java中的关键字 坚决不允许出现中文 具体还要查看《阿里巴巴java开发手册》原创 2021-07-14 09:49:59 · 75 阅读 · 0 评论 -
01 - java 开始
Java 的优势 java适合做web后台 java配置环境的时候 java的安装目录:JAVA_HOME jdk的安装目录:%JAVA_HOME%\bin java的执行机制 先将.java的文件用 javac 编译成 .class的字节码文件 再将这些 .class 的字节码文件用 java 执行(执行的是文件名) java的跨平台 对于不同的系统都有不同的jdk,每个jdk里面的jvm作用都一样,所以一个java文件可以在不同的平台上运行 不管什么系统,只要装了jvm,就能运行java原创 2021-07-14 09:50:15 · 39 阅读 · 0 评论 -
03 - 变量的数据类型
1. 数据类型 java的数据类型可以分为四类八种 整形 byte 8位 – 1字节 – 取值范围是 (-128~127) ==> 11111111~10000000 第一位称作符号位,以1开头的是负数,以0开头的是整数 正数的源码、反码、补码都是本身 00011100 负数的反码 – 除了符号位,其余取反 10011100 补码就是反码 + 1 /* 正数 2 --> 00000010 正数的原码反码补码都一样 负数 -2 --> 100000010原创 2021-07-13 13:11:40 · 140 阅读 · 0 评论 -
04 - java 运算符
位移运算符 有符号左移 << int a = 1 << 2; System.out.println(a); // 4 ==> 1 * 2 ^ 2 无符号左移 <<< 右移 >> int a = 1 >> 2; System.out.println(a); // 0 ==> 1 / 2 ^ 2 cpu计算位移、与或非的速度非常快 ...原创 2021-07-13 13:10:48 · 36 阅读 · 0 评论 -
05 - 基本排序
01-冒泡排序 public static int[] bubbleSort(int[] arr) { for (int i = 0; i < arr.length - 1; i++) { for (int j = 0; j < arr.length - i; j++) { if (arr[i] > arr[i + 1]) { // 两两交换 int temp = arr[i]; arr[i]原创 2021-07-13 13:09:50 · 36 阅读 · 0 评论 -
06 - java 方法
Java 方法 一个方法可以重复使用很多次,减少不必要的冗余,以及重复很多次不必要的操作 让整个程序看起来模块化 public static void main (String[] args) { Scanner sc = new Scanner(System.in); int num = sc.nextInt(); switch (num) { case 1: int[] arr = {1, 2, 3}; add(arr); break;原创 2021-07-13 13:08:17 · 38 阅读 · 0 评论 -
07 - java 方法里面的 return
Java 方法里面的 return return 之函数返回值 public static int sum(a, b) { return a + b; } return 之结束方法 Scanner sc = new Scanner(System.in): int num = sc.nextInt(); if (num == 5) { return; System.out.println("哈哈哈,我是不会执行的"); // 函数遇到 return 直接就停掉整个函数,不会执行 ret原创 2021-07-13 13:07:13 · 79 阅读 · 0 评论 -
09 - java 包命名规范
java包命名规范 – 域名倒置 Java的包名都有小写单词组成,类名首字母大写;包的路径符合所开发的 系统模块的 定义,比如生产对生产,物资对物资,基础类对基础类。以便看了包名就明白是哪个模块,从而直接到对应包里找相应的实现。 由于Java面向对象的特性,每名Java开发人员都可以编写属于自己的Java Package,为了保障每个java Package命名的唯一性,在最新的Java编程规范中,要求开发人员在自己定义的包名前加上唯一的前缀。由于互联网上的域名称是不会重复的,所以多数开发人员采用自己公司在原创 2021-07-13 13:06:10 · 142 阅读 · 0 评论 -
10 - java 权限修饰符
java权限修饰符 作用域 当前类 同package 子孙类 其他package public √ √ √ √ protected √ √ √ × friendly(defult) √ √ × × private √ × × × 为什么要时候用权限修饰符? 对自己而言,保护代码不受污染 对别人而言,给别人一个干净的类 ...原创 2021-07-13 13:00:49 · 32 阅读 · 0 评论 -
11 - java构造方法
java构造方法 构造方法 构造方法名与类名一致 没有返回值 使用 new 其实是在调用构造方法 如果一个类里面没有构造方法,会自动创建一个空的构造方法 构造方法能传参数,在构造期间就把对象的值赋好 一旦有了新的有参数的构造方法,空的构造函数就不存在了,如果想保留,手动写一个 public class Person { private String name; Person() { } } 重载构造方法 同一个类,名字一样,参数不一样 方法的名字一样,返回原创 2021-07-13 12:52:22 · 38 阅读 · 0 评论 -
12 - java 类加载内存图
栈是线程私有的、堆是线程公有的 如果不加 static 就是堆里面的属性,加了static 就是元数据区的属性原创 2021-07-13 12:39:55 · 53 阅读 · 0 评论 -
13 - java包装类
变量的包装类 八种数据类型 八种包装类 byte Byte short Short int Integer long Long float Flat double Double char Character boolean Boolean 自动装箱 (jdk1.5就有了) Integer i = 0; ==> Integer i = new Integer("0"); //=> 基础数据类型会自动包装成引用数据类型 自动拆箱 int i = 0;原创 2021-07-13 11:40:34 · 75 阅读 · 0 评论