包
1、 如果有包。如何在命令框底下去编译?
在代码里加上package com.路径
编译的时候路径是反斜杠\;运行的时候是点号.
2、 JVM在哪里启动的?
一般都是默认的,在哪里运行就在哪里启动
3、 包 :本质上就是用文件夹来管理java文件的。
包是有规范的;包的命名一般全都是小写;
一半是倒着写的。
Eg:
www.baidu.com——》com.baidu(公司名字).www
//可以用拼音com.xiyou.www
4、 java.util底下放的都是工具类
5、 当一个java class里有多个java.util,可合并在一起,即导入util底下所有的包。
Eg:
import java.util.Date;
import java.util.Arrays;
//可合并简写如下:
import java.util.*;
Java.lang包底下的所有东西,全部不需要自己导入,编译器会自动导入java.lang
6、 访问权限:public , private , protected
如果没有加以上三个权限,则称为包访问权限
包访问权限即只能访问同一个包中的内容。
Eg:
Demo1.java
package com.bit.demo;
public class Demo1 {
int value = 0;
}
Demo2.java
package com.bit.demo;
public class Demo2 {
public static void Main(String[] args) {
Demo1 demo = new Demo1();
System.out.println(demo.value);
}
} // 执行结果, 能够访问到 value 变量 10
7、
常见的系统包
- java.lang:系统常用基础类(String、Object),此包从JDK1.1后自动导入。
- java.lang.reflect:java 反射编程包;
- java.net:进行网络编程开发包。
- java.sql:进行数据库开发的支持包。
- java.util:是java提供的工具程序包。(集合类等) 非常重要
- java.io:I/O编程开发包
继承
1、public class Cat//子类,派生类 extends Animal//父类,基类,超类
继承的作用:为了代码的复用。
2、继承到底继承了父类的什么东西?
除构造函数外的所有
子类继承了父类,子类需要帮助父类来进行构造
3、super (name);显示的调用父类的构造方法——》帮助父类来进行构造
必须放在方法的第一行,因为子类构造的时候,需要先构造父类
子类继承了父类,
4、静态的永远先执行
5、protected
如果把字段设为 private, 子类不能访问. 但是设成 public, 又违背了我们 “封装” 的初衷. 两全其美的办法就是 protected 关键字
6、多继承
因为java是单继承语言,所以java每次只能继承一个类。
7、 final 可以修饰一个变量,也可以修饰类
eg:
final int a = 10; //常量
final class A {} 密封类
一旦一个类被final所修饰,那么就不能被继承了
多态
1、父类引用 引用子类的对象 向上转型
父类的引用只能调用自己的方法或者访问自己的属性
2、向上转型所发生的时机?
I)直接赋值
Ii)参数传递
Iii)方法返回值
3、尽量不要向下转型
向下转型的条件是:父类已经引用了子类(向下转型后的类型)的对象