Java第二次听课笔记(20160512)

  1. 多态,是多种状态,多种形态,是用不同的角度去观察它

    就为了关注对象的不同方面,

    一个是继承一个是接口是多态的体现

    是编程的一种形式,

    重载是一个类中具有相同名称的方法

    class Richer{

    public void buy(){

    }

    }

//重用

class Dog extedns Animal{

public void run(){

}

}

class Jing8 extends Dog{

public void run(){

}

}

方法可以覆盖,但是属性是资产不可以覆盖。

class Richer{

public void buy(){

}

public void beauty(){

}

}

适配器 adapter:用来简化编程

-------------------

interface只的方法的声明,没有方法的实现

interface Listener{

public void a1();

public void a2();

public void a3();

public void a4();

..

}

abstract class MyListener implements Listener{

public void a1(){}

public void a2(){}

public void a4(){}

}

class BaseListener implements Listener{

//空实现

public void a1(){}

public void a2(){}

public void a3(){}

..

}

实现了接口的就叫作适配器,预先完成了很多基本的工作。

方便很多人做自己的事,适配就是适当的配合人做自己的事。

一般都将适配器作成抽你类。

因为BaseListener把接口全部实现 ,这样自己写的类就变简洁了

class MyListener extends BaseListener{

public void a1(){

}

}

class App{

public static void main(String[] args){

MyListener l=new MyListener();

//一气呵成

new BaseListener(){

public void a1(){

//这就是匿名内部类对象

....

}

};

//写代码的时候一定要成对存在,清晰

}

}

静态变量,静态函数,静态类,静态代码块的访问,初始化过程

静态的只与类有关系与对象没有关系。

class Demo{

static String name;

static String getName(){

return name;

}

static {

}

}

静态成员在

方法区中有静态区

静态代码块

classLoader类加载器把类加载到类的方法区中

静态代码块在类加载的时候调用一次。

类完成成员变量与成员函数后才调用静态代码块。

静态代码块是加载的后处理。加载的后处理。

postLoader

---------------------------

类的静态代码块是在类的成员他们加载完毕之后调用的。

-------------

一个类的静态成分

生产者和消费者

path:

------------------

路径:

环境变量:path=路径 程序的搜索顺序。

这个路径是操作系统

classpath:类路径:搜索类的顺序

细节决定成败

注意看帮助,JDK是中文帮助。

Exception  //可以解决的

Error //致命的,硬伤

class MyException extends Exception{

}

throws new MyException();

class A{

public void xxx()throws MyException{

throw new MyException();

}

}

class MyException extends RuntimeException{

}

throws new MyException();

class A{

//自定义方法

public void xxx(){

throw new MyException();

}

public static void main(String[] args){

try{

xxx();

} catch(MyException e){

//e是异常对象的引用

}

}

}

1.java.lang.Throwable

2.子类

java.lang.Exception ---> java.lang.Throwable

java.lang.Error   ---> java.lang.Throwable

3.运行时异常不需要在方法中声明

非运行时异常,需要声明。

多线程主要写灵活响应的桌面程序 。

Daemon是守护线程,为其他程序服务的。

时间: 2024-08-10 17:20:24

Java第二次听课笔记(20160512)的相关文章

Thinking in Java 第二章学习笔记

Java虽基于C++,但相比之下,Java是一种更加纯粹的面向对象程序设计语言. 在Java的世界里,几乎一切都是对象,而Java中的全部工作则是定义类,产生那些类的对象,以及发送消息给这些对象. 尽管一切皆称对象,但我们真正操纵的确是对象的引用,好比电视机为对象,遥控器则为引用,你若想在房间里边走边操控电视,只需带着遥控器这个引用,不必带着电视这个对象.另外,引用可以单独存在,并不需要有对象与之相关联.如创建String s,则创建了一个String引用,但此时如果向这个引用发送消息,就会返回

《深入理解Java虚拟机》读书笔记---第二章 Java内存区域与内存溢出异常

Java与C++之间有一堵由内存动态分配和垃圾收集技术所围成的高墙,墙外面的人想进去,墙里面的人却想出来.这一章就是给大家介绍Java虚拟机内存的各个区域,讲解这些区域的作用,服务对象以及其中可能产生的问题. 1.运行时数据区域 Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域. 1.1程序计数器 程序计数器(Program Counter Register)是一块较小的内存空间,它的作用可以看作是当前线程所执行的字节码的行号指示器.在虚拟机的概念模型中里,字

Java 第二章 变量 、数据类型和运算符 笔记

Java 第二章 变量 .数据类型和运算符 一.变量:存储数据的一个基本单元. 二.变量的声明和赋值: 1)声明并赋值:数据类型 变量名=值;      例:int  price=1000; 2)声明.赋值分两步:数据类型 变量名;   例: int  price; 变量名=值;              price=1000; 三.数据类型2种: 1)基本数据类型8种: Byte 长度:-128~127(-2的7次方到2的7次方减1) Short   -2的15次方到2的15次方减1 Int

http请求详解,防盗链技术_韩顺平PHP视频听课笔记

韩顺平PHP视频听课笔记 第84讲 http请求详解,防盗链技术 1,  通过httpwatch插件来抓取http请求内容 2,  http1.0短连接, http1.1长连接 http1.0短连接:每次通信时间很短,效率极低,已被废除. http1.1长连接:通话时间长.只要现在基本都采用http1.1. 只要Connection的状态为keep-alive,就说明是通话状态 3,  http是tcp/ip协议的一个应用层协议,http也是我们web开发的基础. 4,  一个问题:看一个tes

java/android 设计模式学习笔记(一)---单例模式

前段时间公司一些同事在讨论单例模式(我是最渣的一个,都插不上嘴 T__T ),这个模式使用的频率很高,也可能是很多人最熟悉的设计模式,当然单例模式也算是最简单的设计模式之一吧,简单归简单,但是在实际使用的时候也会有一些坑. PS:对技术感兴趣的同鞋加群544645972一起交流 设计模式总目录 java/android 设计模式学习笔记目录 特点 确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例. 单例模式的使用很广泛,比如:线程池(threadpool).缓存(cache).对

Java编程思想总结笔记Chapter 2

本章介绍Java程序的基本组成部分,体会到Java中几乎一切都是对象. 第二章   一切都是对象 目录: 2.1 用引用操纵对象 2.2 必须由你创建所有对象 2.3 永远不需要销毁对象 2.4 创建新的数据类型:类 2.5 方法.参数和返回值 2.6 构建一个Java程序 2.7 你的第一个Java程序 2.8 注释和嵌入式文档 2.9 编码风格 2.1 用引用操纵对象 一切都看作对象,操纵的标识符实际上是对象的一个"引用",遥控器(引用)操纵电视机(对象),想调控电视,只需通过遥控

Java多线程技术学习笔记(二)

目录: 线程间的通信示例 等待唤醒机制 等待唤醒机制的优化 线程间通信经典问题:多生产者多消费者问题 多生产多消费问题的解决 JDK1.5之后的新加锁方式 多生产多消费问题的新解决办法 sleep和wait的区别 停止线程的方式 守护线程 线程的其他知识点 一.线程间的通信示例 返目录回 多个线程在处理同一资源,任务却不同. 假设有一堆货物,有一辆车把这批货物往仓库里面运,另外一辆车把前一辆车运进仓库的货物往外面运.这里货物就是同一资源,但是两辆车的任务却不同,一个是往里运,一个是往外运. 下面

java/android 设计模式学习笔记(9)---代理模式

这篇博客我们来介绍一下代理模式(Proxy Pattern),代理模式也成为委托模式,是一个非常重要的设计模式,不少设计模式也都会有代理模式的影子.代理在我们日常生活中也很常见,比如上网时连接的代理服务器地址,更比如我们平时租房子,将找房子的过程代理给中介等等,都是代理模式在日常生活中的使用例子. 代理模式中的代理对象能够连接任何事物:一个网络连接,一个占用很多内存的大对象,一个文件,或者是一些复制起来代价很高甚至根本不可能复制的一些资源.总之,代理是一个由客户端调用去访问幕后真正服务的包装对象

0718-----C++Primer听课笔记----------运算符重载

0.两个要点 a) 一个空类,编译器自动合成默认无参构造函数.析构函数.拷贝构造函数.赋值运算符. b) 在编写类的时候,必须严格区分对象是否可复制. 1.运算符重载之 string类 1.1 运算符重载的几个要点: a) 运算符重载可以有成员函数和友元函数的形式,后者比前者多一个参数. b) =和+=必须重载为成员函数的形式(不太理解原因). c) 输入和输出必须为友元函数的形式.而且输入操作符要考虑输入失败的情况. d) 运算符重载为成员函数的形式,那么该操作符的第一个操作数必然为该类的对象