![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java基础7天笔记
时光如水_岁月如哥
一分耕耘未必一分收获,但九分耕耘,必有一分收获。加油。。。
展开
-
Java 基本语法----进制、运算符
进 制 对于整数,有四种表示方式:二进制:0,1 ,满 2 进 1.以 0b 或 0B 开头。十进制:0-9 ,满 10 进 1. 八进制:0-7 ,满 8 进1. 以数字 0 开头表示。十六进制:0-9 及 A-F,满 16 进1. 以 0x 或 0X开头表示。此处的A-F不区分大小写。 所有数字在计算机底层都以二进制形式存在。 计算机以补码的形式保存所有的整数。 正数的补码与其原码相同;原创 2017-09-28 10:03:51 · 396 阅读 · 0 评论 -
高级类特性----static关键字
static 关键字 当我们编写一个类时,其实就是在描述其对象的属性和行为,而并没有产生实质上的对象,只有通过new关键字才会产生出对象,这时系统才会分配内存空间给对象,其方法才可以供外部调用。 我们有时候希望无论是否产生了对象或无论产生了多少对象的情况下,某些特定的数据在内存空间里只有一份,例如所有的中国人都有个国家名称,每一个中国人都共享这个国家名称,不必在每一个中国人的实例对象中都单独分配原创 2017-09-28 10:05:06 · 338 阅读 · 0 评论 -
高级类特性----final关键字
final 关键字 在Java中声明类、属性和方法时,可使用关键字final来修饰。 final标记的变量(成员变量或局部变量)即成为常量,只能赋值一次。 final标记的类不能被继承。提高安全性,提高程序的可读性。 final标记的方法不能被子类重写。增加安全性。 final标记的成员变量必须在声明的同时或在每个构造方法中显式赋值,然后才能使用。final PI=3.14; 关键字f原创 2017-09-28 10:05:12 · 257 阅读 · 0 评论 -
高级类特性----抽象类(abstract class)
抽象类(abstract class) 随着继承层次中一个个新子类的定义,类变得越来越具体,而父类则更一般,更通用。类的设计应该保证父类和子类能够共享特征。有时将一个父类设计得非常抽象,以至于它没有具体的实例,这样的类叫做抽象类。 用abstract关键字来修饰一个类时,这个类叫做抽象类;用abstract来修饰一个方法时,该方法叫做抽象方法。 抽象方法:只有方法的声明,没有方法的实现。以分原创 2017-09-28 10:05:16 · 304 阅读 · 0 评论 -
对象、继承、封装、多态、抽象类的组合应用
对象、继承、封装、多态、抽象类的组合应用编写工资系统,实现不同类型员工(多态)的按月发放工资。如果当月出现某个Employee对象的生日,则将该员工的工资增加100元。(1)定义一个Employee类,该类包含: private成员变量name,number,birthday,其中birthday 为MyDate类的对象; abstract方法earnings();toString()方法原创 2017-09-28 10:05:22 · 1593 阅读 · 0 评论 -
高级类特性----接口(intertface)
接 口 有时必须从几个类中派生出一个子类,继承它们所有的属性和方法。但是,Java不支持多重继承。有了接口,就可以得到多重继承的效果。 接口(interface)是抽象方法和常量值的定义的集合。 从本质上讲,接口是一种特殊的抽象类,这种抽象类中只包含常量和方法的定义,而没有变量和方法的实现。 接口定义举例 public interface Runner { int id = 1;原创 2017-09-28 10:05:27 · 628 阅读 · 0 评论 -
高级类特性----内部类
内部类 在Java中,允许一个类的定义位于另一个类的内部,前者称为内部类。 内部类和外层封装它的类之间存在逻辑上的所属关系 Inner class一般用在定义它的类或语句块之内,在外部引用它时必须给出完整的名称。 Inner class的名字不能与包含它的类名相同; Inner class可以使用包含它的类的静态和实例成员变量,也可以使用它所在方法的局部变量。 内部类举例原创 2017-09-28 10:05:34 · 213 阅读 · 0 评论 -
异常处理----概述、异常处理机制
异常概述 任何一种程序设计语言设计的程序在运行时都有可能出现错误,例如除数为0,数组下标越界,要读写的文件不存在等等。 捕获错误最理想的是在编译期间,但有的错误只有在运行时才会发生。 对于这些错误,一般有两种解决方法: 遇到错误就终止程序的运行。 由程序员在编写程序时,就考虑到错误的检测、错误消息的提示,以及错误的处理。 异常:在Java语言中,将程序执行中发生的不正常情况称为“异常原创 2017-09-28 10:05:40 · 384 阅读 · 0 评论 -
异常处理----使用 try…catch…finally 处理异常
使用 try…catch…finally 处理异常 异常处理是通过try-catch-finally语句实现的。 try { ...... //可能产生异常的代码 } catch( ExceptionName1 e ) { ...... //当产生ExceptionName1型异常时的处置措施 } catch( ExceptionName2 e ) { ......原创 2017-09-28 10:05:46 · 785 阅读 · 0 评论 -
异常处理----声明抛出异常/人工抛出异常
声明抛出异常 声明抛出异常是Java中处理异常的第二种方式如果一个方法(中的语句执行时)可能生成某种异常,但是并不能确定如何处理这种异常,则此方法应显式地声明抛出异常,表明该方法将不对这些异常进行处理,而由该方法的调用者负责处理。在方法声明中用 throws 子句可以声明抛出异常的列表,throws后面的异常类型可以是方法中产生的异常类型,也可以是它的父类。 声明抛出异常举例: publ原创 2017-09-28 10:05:50 · 677 阅读 · 0 评论 -
Java集合----概述、Collection接口、Iterator接口
Java 集合概述 Java 集合就像一种容器,可以把多个对象的引用放入容器中。 Java 集合类可以用于存储数量不等的多个对象,还可用于保存具有映射关系的关联数组 Java 集合可分为 Set、List 和 Map 三种体系 Set:无序、不可重复的集合 List:有序,可重复的集合 Map:具有映射关系的集合 在 Java5 之前,Java 集合会丢失容器中所有对象的数据类型,把原创 2017-09-28 10:05:56 · 371 阅读 · 0 评论 -
Java集合----List集合
ListList 代表一个元素有序、且可重复的集合,集合中的每个元素都有其对应的顺序索引List 允许使用重复元素,可以通过索引来访问指定位置的集合元素。List 默认按元素的添加顺序设置元素的索引。List 集合里添加了一些根据索引来操作集合元素的方法 void add(int index, Object ele) boolean addAll(int index, Collection原创 2017-09-28 10:08:53 · 346 阅读 · 0 评论 -
Java集合----Set集合
Set集合 Set 集合不允许包含相同的元素,如果试把两个相同的元素加入同一个 Set 集合中,则添加操作失败。 Set 判断两个对象是否相同不是使用 == 运算符,而是根据 equals 方法 HashSet HashSet 是 Set 接口的典型实现,大多数时候使用 Set 集合时都使用这个实现类。 HashSet 按 Hash 算法来存储集合中的元素,因此具有很好的存取和查找原创 2017-09-28 10:08:57 · 334 阅读 · 0 评论 -
Java集合----Map集合
Map Map 用于保存具有映射关系的数据,因此 Map 集合里保存着两组值,一组值用于保存 Map 里的 Key,另外一组用于保存 Map 里的 Value Map 中的 key 和 value 都可以是任何引用类型的数据 Map 中的 Key 不允许重复,即同一个 Map 对象的任何两个 Key 通过 equals 方法比较中返回 false Key 和 Vlaue 之间存在单向一对一关系原创 2017-09-28 10:09:03 · 313 阅读 · 0 评论 -
Java类的设计----Object 类
Object类 Object类是所有Java类的根父类如果在类的声明中未使用extends关键字指明其父类,则默认父类为Object类 public class Person { ... } 等价于: public class Person extends Object {. ... }例: method(Object obj){…}//可以原创 2017-09-28 10:04:57 · 283 阅读 · 0 评论 -
Java类的设计----关键字super
关键字super 在Java类中使用super来引用父类的成分 super可用于访问父类中定义的属性 super可用于调用父类中定义的成员方法 super可用于在子类构造方法中调用父类的构造方法 super的追溯不仅限于直接父类 关键字 super举例 public class Person { private String name; private int a原创 2017-09-28 10:04:46 · 367 阅读 · 0 评论 -
面向对象----信息的封装和隐藏
信息的封装和隐藏信息封装和隐藏的必要性 使用者对类内部定义的属性(对象的成员变量)的直接操作会导致数据的错误、混乱或安全性问题。(version1) 1 public class Animal { 2 public int legs; 3 public void eat(){ 4 System.out.println(“Eating.”);原创 2017-09-28 10:04:15 · 625 阅读 · 0 评论 -
面向对象----类和对象
类和对象理解面向对象的概念面向过程 在一个结构体中定义窗口的大小,位置,颜色,背景等属性,对窗口操作的函数与窗口本身的定义没有任何关系,如HideWindow,MoveWindow,MinimizeWindow,这些函数都需要接受一个代表要被操作的窗口参数 ,是一种谓语与宾语的关系 。 面向对象 定义窗口时,除了要指定在面向过程中规定的那些属性,如大小,位置,颜色,背景等外,还要指定该原创 2017-09-28 10:04:08 · 393 阅读 · 0 评论 -
Java 基本语法----数组
数组数组概述 数组是多个相同类型数据的组合,实现对这些数据的统一管理。 数组属引用类型,数组型数据是对象(Object),数组中的每个元素相当于该对象的成员变量。 数组中的元素可以是任何数据类型,包括基本类型和引用类型。 一维数组声明 一维数组的声明方式: type var[] 或 type[] var; 例如: int a[]; int[] a1; double原创 2017-09-28 10:04:04 · 318 阅读 · 0 评论 -
Java 基本语法----流程控制
流程控制选择结构(分支语句) 分支语句根据一定的条件有选择地执行或跳过特定的语句 Java分支语句分类 if-else 语句 switch 语句 if-else语句语法格式if(布尔表达式){ 语句或语句块;}if(布尔表达式) { 语句或语句块;} else if(布尔表达式){ 语句或语句块;}else { 语句或语句块;}原创 2017-09-28 10:03:58 · 481 阅读 · 0 评论 -
Java 基本语法----变量
变 量变量的概念内存中的一个存储区域该区域有自己的名称(变量名)和类型(数据类型)Java中每个变量必须先声明,后使用该区域的数据可以在同一类型范围内不断变化 定义变量的格式:数据类型 变量名 = 初始化值 1 public class Test{ 2 3 //成员变量 4 int c = 12; 5 public static void原创 2017-09-28 10:03:45 · 291 阅读 · 0 评论 -
Java 基本语法----关键字、标识符
关键字 关键字的定义和特点定义:被Java语言赋予了特殊含义,用做专门用途的字符串(单词)特点:关键字中所有字母都为小写 用于定义数据类型的关键字 class interface enum byte short int long float double char boolean void 用于定义数据类型值的关键字 true false null 用于定义流程控制的关键字 if e原创 2017-09-28 10:03:41 · 268 阅读 · 0 评论 -
Java语言概述
Java语言概述基础常识 人机交互方式 图形化界面(Graphical User Interface GUI)这种方式简单直观,使用者易于接受,容易上手操作。 命令行方式(Command Line Interface CLI):需要有一个控制台,输入特定的指令,让计算机完成一些操作。较为麻烦,需要记录住一些命令。 常用的DOS命令 dir(directory) : 列出当原创 2017-09-28 10:03:34 · 252 阅读 · 0 评论 -
面向对象----构造方法、this 关键字、函数的参数传递、package语句/import语句
构造方法构造器的定义、作用 构造方法的特征 它具有与类相同的名称;它不含返回值;注意:在构造方法里不含返回值的概念是不同于“void”的,在定义构造方法时加了“void”,结果这个方法就不再被自动调了。 构造方法的作用当一个类的实例对象刚产生时,这个类的构造方法就会被自动调用,我们可以在这个方法中加入要完成初始化工作的代码。这就好像我们规定每个“人”一出生就必须先洗澡,我们就可以在“原创 2017-09-28 10:04:19 · 410 阅读 · 0 评论 -
面向对象----方法的重载
方法的重载方法(函数) 返回值类型 函数名(参数类型 形式参数1,参数类型 形式参数2,….) { 程序代码 return 返回值;} 其中:参数类型:就是该形式参数的数据类型。返回值:方法在执行完毕后返还给调用它的程序的数据。返回值类型:函数要返回的结果的数据类型。实参:调用函数时实际传给函数形式参数的数据。形式参数:在方法被调用时用于接收外部传入的数据的变量。原创 2017-09-28 10:04:25 · 766 阅读 · 0 评论 -
Java 类设计----Java类的继承
Java类的继承 为描述和处理个人信息,定义类Person: public class Person { public String name; public inat age; public Date birthDate; public String getInfo() {...}} 为描述和处理学生信息,定义原创 2017-09-28 10:04:31 · 1043 阅读 · 0 评论 -
Java类的设计----访问控制
访问控制 可以对Java类中定义的属性和方法进行访问控制----规定不同的保护等级: public、protected、default、private //仅在类的内部可以访问. private String email; //在同一个包内该属性可以被访问. String major; //在子类中该属性可以被访问, 且该子类可以跨包 protected int salary; //访原创 2017-09-28 10:04:38 · 265 阅读 · 0 评论 -
Java类的设计----方法的重写、覆盖
方法的重写、覆盖 在子类中可以根据需要对从父类中继承来的方法进行改造—覆盖方法(方法的重置、重写),在程序执行时,子类的方法将覆盖父类的方法。 覆盖方法必须和被覆盖方法具有相同的方法名称、参数列表和返回值类型。 覆盖方法不能使用比被覆盖方法更严格的访问权限。 覆盖方法举例(1) public class Person { public String name; public原创 2017-09-28 10:04:42 · 317 阅读 · 0 评论 -
Java类的设计----多态性及其应用
多态性及其应用多态性 多态—在Java中,子类的对象可以替代父类的对象使用一个变量只能有一种确定的数据类型一个引用类型变量可能指向(引用)多种不同类型的对象 Person p = new Student(); Object o = new Person();//Object类型的变量o,指向Person类型的对象 o = new Student(); //Object类型的变量原创 2017-09-28 10:04:52 · 1129 阅读 · 0 评论 -
Java集合----Collection工具类
Collections 工具类 Collections 是一个操作 Set、List 和 Map 等集合的工具类 Collections 中提供了大量方法对集合元素进行排序、查询和修改等操作,还提供了对集合对象设置不可变、对集合对象实现同步控制等方法 排序操作: reverse(List):反转 List 中元素的顺序 shuffle(List):对 List 集合元素进行随机排序 so原创 2017-09-28 10:09:07 · 460 阅读 · 0 评论