Thinking in java 16/3/5

接口:类的函数

Light lt = new Light();

lt.on();

隐藏:类成员/接口函数的存在方式(被使用的方式)

public:

private:

protected:

复用和继承的区别

复用:汽车包含引擎(a包含b)

继承:猫是动物(基类与导出类)

extends与覆盖(overriding)概念

extends继承:添加功能(原功能自动存在)

overrding:重写,相同接口不同功能

思考:有无覆盖导出类的区别

a.圆是一个几何形状(子类)

b.电子书像纸制书(代替)

思考:当两个类存在交集,是否有必要继承还是完全代替,生成新的类

////////////////////////////////////////////////////////

java和c++区别:

单根继承机构:是否所有的类都继承自单一基类?

只能一种方式创建对象:(在堆上) new 动态创建

//容器:存储对象的容器(对象为引用)

并发编程:在同一时刻内执行过个任务

多线程与锁定

锁定:避免共享资源的问题(两个线程同时触发打印机)

//java并发置于语言之中

时间: 2024-12-07 07:24:47

Thinking in java 16/3/5的相关文章

java 16进制转换10进制

public static String toHexString2(byte[] b) { StringBuffer buffer = new StringBuffer(); for (int i = 0; i < b.length; ++i) { buffer.append(toHexString2(b[i])); } return buffer.toString(); } public static String toHexString2(byte b) { char[] buffer =

java 16进制与字符串直接相互转换

java 16进制与字符串直接相互转换 CreationTime--2018年7月12日09点39分 Author:Marydon 1.16进制转换成字符串 /** * 16进制直接转换成为字符串 * @explain * @param hexStr 16进制字符串 * @return String */ public static String fromHexString(String hexString) { // 用于接收转换结果 String result = ""; // 转

java 16 -11 ArrayList存储自定义对象并增强for遍历

需求:ArrayList存储自定义对象并遍历.要求加入泛型,并用增强for遍历. A:迭代器 B:普通for     C:增强for LinkedList,Vector,Colleciton,List等存储继续练习 增强for是用来替迭代器. 1 package cn_JDK5new; 2 3 import java.util.ArrayList; 4 import java.util.Iterator; 5 6 7 public class ArrListDemo2 { 8 public st

java 16 - 13 可变参数和Arrays工具类的asList()方法

可变参数:定义方法的时候不知道该定义多少个参数 格式: 修饰符 返回值类型 方法名(数据类型… 变量名){ } 注意: 这里的变量其实是一个数组 如果一个方法有可变参数,并且有多个参数,那么,可变参数肯定是最后一个 1 import java.util.Scanner; 2 public class ArgsDemo { 3 4 public static void main(String[] args) { 5 int result = sum(1,2,3,4,5,6,7,8,9);//参与计

java 16 -3 Vector的特有功能

1 /* 2 * Vector的特有功能: 3 * 1:添加功能 替代 4 * public void addElement(Object obj) -- add() 5 * 2:获取功能 6 * public Object elementAt(int index) -- get() 7 * public Enumeration elements() -- Iterator iterator() 8 * boolean hasMoreElements() hasNext() 9 * Object

java 16 - 5 LinkedList模拟栈数据结构的集合

请用LinkedList模拟栈数据结构的集合,并测试 题目的意思是: 你自己的定义一个集合类,在这个集合类内部可以使用LinkedList模拟. 1 package cn_LinkedList; 2 3 import java.util.LinkedList; 4 5 6 7 8 public class MyStack { 9 10 //定义一个LinkedList类的成员变量 11 private LinkedList list = null; 12 13 /** 14 * 构造方法 15

java 16 - 9 增强for的概述和使用

JDK5的新特性:自动拆装箱,泛型,增强for,静态导入,可变参数,枚举 增强for:是for循环的一种. 格式: for(元素数据类型 变量 : 数组或者Collection集合) { 使用变量即可,该变量就是元素 } 好处:简化了数组和集合的遍历. 弊端: 增强for的目标不能为null. 如何解决呢?对增强for的目标先进行不为null的判断,然后在使用. 1 import java.util.ArrayList; 2 import java.util.Collection; 3 impo

java 16 -12 静态导入

静态导入: 格式:import static 包名….类名.方法名; 可以直接导入到方法的级别 静态导入的注意事项: A:方法必须是静态的 B:如果有多个同名的静态方法,容易不知道使用谁?这个时候要使用,必须加前缀. 由此可见,意义不大,所以一般不用,但是要能看懂. 1 import static java.lang.Math.abs; 2 import static java.lang.Math.pow; 3 import static java.lang.Math.max; 4 5 //错误

java 16 -4 LinkedList的特有功能

了解 LinkedList的特有功能: A:添加功能 public void addFirst(Object e) public void addLast(Object e) B:获取功能 public Object getFirst() 得到第一个元素 public Obejct getLast() 得到最后一个元素 C:删除功能 public Object removeFirst() 删除第一个元素 public Object removeLast() 删除最后一个元素 1 import j

Java 16进制、unicode互转

package service; import java.util.regex.Matcher; import java.util.regex.Pattern; public class CodeChange { /* * 把中文字符串转换为十六进制Unicode编码字符串 */ public static String stringToUnicode(String s) { String str = ""; for (int i = 0; i < s.length(); i++