利用Java编程思想和视频学习,熟悉了Java语言:
(1)Java语言基础(基本数据类型、运算符、字符串操作、控制流程、数组等)
a.基本数据类型:整形、浮点型、char型boolean类型
b.运算符:强制类型转换、数学函数等
c.字符串操作:子串、拼接、检测是否相等
d.控制流程:循环、条件语句、多重选择(switch语句)
e.数组:for each循环、初始化、拷贝等
(2)Java面向对象的编程思想(接口、类、对象、继承和多态等)
a.类、类之间的关系:依赖uses-a、聚合has -a 、继承is- a
b.对象:具有行为、状态、标示三个主要特性
c.静态域和静态方法:关键字static的使用,修饰类、变量、构造方法、成员方法均有不同的作用
d.继承和多态:构造方法、成员方法重写和覆盖、关键字this、super的使用、父类引用指向子类对象等
e.接口:对类的一组需求描述。仅提供方法的声明,没有具体实现,所有方法均为public。
(3)Java中常用类及它们常用的成员方法学习(String类、StringBuffer类、System类、Math类、ArrayList类、Scanner类等
a. String类: 代表字符串, 值在创建之后不能更改,成员方法参考API文档
b. StringBuffer类: 类似于 String
的字符串缓冲区,长度可变,值可以修改,线程 线程安全
c.Stringbuilder类:一个可变的字符序列,快但不安全。
(4)Java中集合框架的学习(Collection接口、Set接口、List接口以及它们的实现类、Map集合等)
A. List接口下的类(有序,可重复)
a. ArrayList类:底层数据结构是数组,查询快,增删慢,线程不安全,效率高
b. Vector类:底层数据结构是数组,查询快,增删慢,线程安全,效率低
c. LinkedList类:底层数据结构是链表,查询慢,增删快线程不安全,效率高
B. Set接口下的类(无序,唯一)
a. HashSet类:底层数据结构是哈希表。
b. LinkedHashSet类:底层数据结构由链表和哈希表组成。由链表保证元素有序。由哈希表保证元素唯一。
c. TreeSet类:底层数据结构是红黑树。(是一种自平衡的二叉树)
C. Map接口下的类:
a. HashMap类:底层数据结构是哈希表。线程不安全,效率高,哈希表依赖两个方法:hashCode()和equals()。
b. LinkedHashMap类:底层数据结构由链表和哈希表组成。由链表保证元素有序。由哈希表保证元素唯一。
c. Hashtable类:底层数据结构是哈希表。线程安全,效率低,哈希表依赖两个方法:hashCode()和equals()
d. TreeMap类:底层数据结构是红黑树。(是一种自平衡的二叉树)
(5)Java中异常处理机制(Throwable类、error处理和exception的捕获、以及对异常机制的使用)
a. Throwable类:Java 语言中所有错误或异常的超类
b. Error类:内部错误或者内存耗尽。
c. Exception类:RuntimeException类和非RuntimeException类分别代表运行时异常
和编译期异常。
d. 抛出异常:thow
e. 捕获异常:try { } 多个catch (ExceptionTypee){ } finally{ };
如果没有抛出异常执行try语句块下代码,然后执行finally语句下代码。如果抛出一个在catch子句中捕获的异常,程序将执行try语句块下的所有代码块直到异常发生为止,此时会跳过try语句下剩余代码块,执行与匹配异常的catch代码块,最后执行finally语句下代码块。如果代码抛出了一个异常并且不是catch捕获的,程序将执行try剩余代码块,直到异常发生,接着执行finally。
(6)Java I/O系统(I/O系统中的File类、实现输入及输出功能的Inputstream类Outputstream类)
a. File类:
b. Inputstream类:
c. Outputstream类
(7)Java多线程的学习(线程的定义、属性、创建方法、以及并发操作需要注意的问题)
2、 学习了编程环境的搭建
学会了JDK和SDK的安装和环境搭建、eclipse、Android studio的安装和配置。
3、 尝试使用eclipse进行小程序编写
学习Java语法的过程中对Java提供的各种接口和成员方法进行测试,并且利用这些方法编写了一些小程序,以增加对语言的理解。