2018.10.18课堂笔记HashMap之前

1.按shift可以多选多个文件,选不相邻的文件按ctrl再选,全选ctrl+A,只取消其中两个可按ctrl+所选
2.搜索:单击我的电脑中搜索--输入要找的文件的名字;如果记不清楚可点移动硬盘输入查找
3,。如何查找我的:电脑的属性驱动器,文件和文件夹的属性,
4.映射网络驱动器;网上邻居---映射网络驱动器--选择盘符---输入目标文件夹地址---完成


父类引用 指向 子类对象
pet get

1.pet 作为参数 方法会根据处近来的具体对象,
如果调用子类的特有方法,需要向下转型Dog dog=(Dog) pet;
if(petinstanceofDog)
抽象类
父类中 宠物 动物 人
都有共同方法,方法中具体实现每个子类都不同,父类中的方法就可以改写为抽象法
抽象类中可以没有抽象方法
private 方法只能在贝类中使用,如果抽象就是要被子类重写
关键字:final
修饰类 被能被继承
修饰的是对象类型,引用类型,
接口:接口可以认为是特殊的抽象类,接口中的方法都是抽象方法
类:继承extends 只能有一个父类
interface 接口接口的出现就扩展了 接口之间是多继承extends
类和接口之间是实现关系,implements十多实现一个类可以实现多个接口
抽象类

10.10接口interface implements
语法
piblic interface IService{
//没有构造方法 不能被实例化
静态常两
全部都是抽象方法

注意Java旨在接口之家In1 extends
class类名 implements 接口1.2.3
用法接口是一种能力。约定
类鱼类的继承 子类is a父类
实现关系类 hasa接口的的能力
继承多肽
pet pet=new Dog();
pet.show();
pet.eat();
Dog dog=(Dog)pet;
dog.playFllyDish();
借口不能被实力化
抽象类和接口的区别
抽象类 关键字 abstract 类
不同 构造方法
抽象类可以有构造方法可以有非构造方法

接口:成员变量默认都是静态常两static fanl
普通类实现接口后,要全部重写接口中的抽象方法,添加
相同都不能实例化


}
接口的特性
不可以被实例化
实现类必须实现接口的所有方法
实现类可以实现多个接口
变量都是静态常量
接口没优势下按任何功能
抽象类可以有构造方法

10.11
异常
API帮助文档
Exception
MisMatchException 输入数据类型不匹配的异常
str.equals(str2);nullpointer Exception
数组 IndexOutofBounds Exception
5/2 结果为2;
5%2 结果为1;
try {

}
catch

finally无论发生什么异常都能执行

throw
throws

如果


10.12
复习
异常
object
Throwable
Error错误 Exception异常
5-6异常
运行时异常
InputMismatchException
ArrayIndexOutofBoundsException
NullPointerException Stringstr=null;

Student stu;Pet pet=new Dog

ClassCastException
ClassNotFoundException

AritheticException

编译时异常
void setSex(String gender)throwsException{


}

main(){

setSex("");//需要异常处理 2中 throws try-catch-finally
}

throws异常抛出throws(声明异常)方法名()throws
throw写在方法体内
方法名()throws异常
throws new Exception();

try 部分是有可能产生异常的代码
catch写的是有异常后处理部分的代码System.err.print();
System.out.print();
System.exit(1)
retrrn;
finally无论是否发生异常都执行

 


try{


catch
自定义异常
创建一个类继承Exception或Throwable

public class GenderException extendsException{
public GenderException(){


}
public GenderException(String message){


}

catch( GenderException ex){

ex.printStackTrace();
ex.getmessage();

}
3.Log4j(异常日志)
第一步:点击项目名称 创建folder

1.复制-粘贴在项目工程中-
2.创建new--file(文件)--log4j.properties(文件名不动)

3.注释符(###)

常见的输出级别alfat>error>wam>info>debug

10.16
集合框架
Collection 接口 单离及合
list

add(object o)
List 子接口 可以get(int index)可以用下标访问;
add(object o)
add(int index object o)
addAll(Collection c)
get

Arraylist 实现类,底层存储结构和数组相同,可以利用所引致
查询效率高,曾山效率低
Linkedlist 底层结构是链式的
增删效率高,查询效率低
存储的内容 元素可以重复,不唯一,有顺序


list.add(Object o);
list.add(int index,Object o);
list.addAll(Collection c);
list.get(int index);
list.remove(Collection c);
list.remove(int index);


Set 子接口 元素不可以重复,唯一,没有顺序
HashSet 实现类
TreeSet
set.add(object o);
set.addAll(Collection c);
set.remove(object o);
//增强for

remove()

 


增强for 或迭代器
迭代器Iterator
Iterator it=Set .iterator();
while(it.hasNext()){
Object o=it.next(); //子类接受,徐向下转型
}
双列集合
Map HashMap
map put(object key, object value )
map.remove(key),
得到每个key
Set keys=map.keySet();
//增强for遍历set中存储的每个key
//迭代器遍历set中存储的每个key
map.get(objict key);//返回Object
map.remove(key),
Set keys=map.keySet();
//

Map <K,V>
K key
V
//便利方式二得到Entry键值对
Set entrys=map.entrySet();
//每个兼职对儿分离成键和值
//增强for或迭代器分离每个entry

entrys.getKey();
entrys.getvalue();
遍历方式三
Collection c=map.values();//增强for值

//增强for或迭代器分离每个值

map.keyset();//值
//增强for或迭代器分离每个键

泛型集合
List<Dog>list=new ArrayList<Dog>()
Map<Interger,Dog>map=new<Interger,Dog>();

第二章 实用类
通过API查找类 方法

 

posted @ 2018-10-18 12:29  水墨&丹青  阅读(112)  评论(0编辑  收藏  举报