码迷,mamicode.com
首页 > 编程语言 > 详细

Java基础-类

时间:2016-07-30 13:24:59      阅读:233      评论:0      收藏:0      [点我收藏+]

标签:

1.类的有关概念:

  • 当有public修饰时,类名必须与文件名相同

  • 如果没有public关键字修饰 则可以不同

  • 类是有相同特征和行为的事物的抽象

  • 特征可以理解为静态的

  • 行为可以理解为动态的

  • *package 将当前文件放入对应的包中

  • *package 后面通常写网址倒置

  • *package 必须是当前文件的第一行

  • *import 引入在本文件中需要使用的类

2.变量定义三要素:

	 * 类型修饰符 变量名 = 初始值;
	 * 使用类创建的变量可以称为对象
	 * 类名 对象名 = new 类名();

3.操作对象的属性

      * 对象名.属性名 对其进行修改

      * 对象名.方法名 对其进行修改

4.方法:类的行为就是方法

 * 方法的写法如下:
 * 修饰符 返回值类型 方法名(参数列表){}

4.1修饰符:

 * 可以写出来的修饰符有三种 :
 * public private protected
 * 不写的为默认的default

4.2返回值类型

 * 无返回值类型:void
 * 有返回值: int  double String Car...
 * 返回值需要在方法内使用return语句 
 * 无返回值类型也可以使用return停止当前的方法

4.3根据返回值及参数的不同,有四种方法形式

 * 1.无参无返
 * 2.无参有返:有返回值的方法可以理解为一个表达式,结果就是方法的返回值
 * 3.有参无返:有参数的方法需要根据方法声明,传入对应参数
 ***传入的参数不要带参数类型***
 * 方法声明时叫做形参
 * 方法调用时叫做实参
 * 4.有参有返:传入的参数不带参数类型

5.方法内可以调用方法

 * 方法重载:
 * 方法名相同,但是参数列表不同:个数-顺序-类型不同
 * ---------方法重载和返回值类型无关---------

6.setter方法和getter方法

 * setter方法:设置器
 * 格式为:public void set属性名()
 * getter方法:访问器
 * 格式为:public 属性类型 get属性名()
 * setter和getter方法不是必须写
 * 按照需求决定属性是否需要设置器或者访问器
 * 设置器和访问器不是必须成对出现
 * this 代表本类的对象
 * this.属性---代表访问本类的属性而不是参数

构造方法:

 * 创建对象时进行初始化
 * 当类中没有构造方法时,编译器会创建一个无参的构造方法
 * 格式为:访问修饰符 类名(参数列表){}
 * 构造方法同样可以重载
 * 构造方法不能有返回值类型的声明

7.在构造方法内直接进行设置

 * ******千万不要在构造方法内使用return返回一个值******
 * 只要类中有任意一个构造方法
 * 编译器将不会生成无参的构造方法

8.继承

 *  从已有类中派生(拓展)出来的新的类
 *  关键字是 : extends
 *  java中只允许单继承

9.super()

	 * super()代表调用父类的构造方法
	 * super()必须写在方法中的第一行
	 * 首先将父类集成的属性进行赋值
	 * 之后再将本类的属性进行赋值

10.final 修饰类,代表该类不可以被继承

  • final 修饰方法,代表该方法不可以被子类重写

  • final 修饰属性,代表该属性不可以再被赋值

  • ---final 修饰的属性,变量名为纯大写--- 

 常用类

1.String类

     * (1).字符串的比较方法:
     * 返回值类型为boolean,参数为另一个字符串
     * 对象.equals(对象)
     * (2).字符串的查找方法1 indexOf(参数)
     * 返回值为int,也就是该字符在字符串中的索引
     * 会返回第一个符合要求的字符位置,没有则返回-1
     * 参数为需要查找的字符
     * 查找方法2 indexOf(参数1,参数2)
     * 参数2为开始查找的位置,传入的位置也会进行判断
     * 会返回第一个从开始位置符合要求的字符的位置,没有则返回-1
     * (3).字符串的替换方法 indexOf(参数1,参数2)
     * 返回值为替换之后的新字符串
     * 参数1为被替换的字符(串),参数2为替换的字符(串)
     * 如果参数1在原字符串中不存在,则不替换
     * 替换的为原字符串中的所有参数1
     * (4).判断字符串是否从已指定字符串开始 startWith()
     * 返回值类型为boolean
     * 参数为需要判断的字符串
          * (5).判断字符串是否已指定字符串结尾   endsWith()
 
     * 返回值类型为boolean
     * 参数为需要判断的字符串
    * (6).去除字符串开始和结尾处的空格
    * trim()
    * 计算字符串长度的方法  length()
    * 返回值为int

2.StringBuffer

         * 可修改的字符串类

     * (1).字符串的截取方法 substring()
     * 参数1为从哪个索引开始
     * 参数2为到哪个索引结束
     * Tips: 遵循左闭右开原则[)
     * (2).字符串的删除方法 delete()
     * 参数1为从哪个索引开始删除
     * 参数2为到哪个索引结束删除
  * (3).字符串的插入方法 insert()
* 参数1为从哪个索引开始
* 参数2为插入的字符(串)
* Tips:左闭还是存在
类集框架

1.数组:相同数据类型的集合

	 * 数组内的元素都是有序的
	 * 格式:数据类型 数组名[] = new 数据类型[数组长度];
	 * 使用数组中的元素	:
     * 通过 数组名[元素位置] 进行取值或赋值

2.ArrayList 的常用方法

	  * ArrayList 可以理解为继承Collection
	  * Collection的所有方法ArrayList都可以使用
	 (1)创建一个ArrayList类
	  * ArrayList<String> list= new ArrayList<String>();
	  * <>中间的类型叫做泛型
      * 暂时理解为数组存储的元素类型
     (2)添加方法 list.add()
      * 在指定位置添加元素 list.add(参数1,参数2)
      * 参数1为位置
      * 参数2为添加内容
	 (3)获得方法 list.get()
     (4)删除方法 list.remove()
     (5)替换方法 list.set(参数1,参数2)
      * 参数1代表要被替换的位置
   	  * 参数2为新的元素
   	 (6)获取指定元素在集合中的位置 list.indexOf(参数)
   	  *返回值为一个int类型的数值

3.Map是一种存储键值对的数据结构

 * Map存放数据是无序的
	 (1)创建一个Map的对象
	  * HashMap<String,String> map= new HashMap<>();
	 (2)添加方法 map.put(参数1,参数2)
		 * 需要传入两个参数
		 * 第一个参数为Key
		 * 第二个参数为Value
	 (3)移除方法 map.remove()
		 * 根据key值移除整个键值对 
	 (4)判断是否包含key或者value
	   1> map.containsKey(Key值)
	 	if(map.containsKey("豹子头")){
			System.out.println("集合中包含豹子头");
		}else{
			System.out.println("集合中不含豹子头");
		}
	   2>map.containsValue(Value值)
		if(map.containsValue("卢俊义")){
			System.out.println("集合中包含卢俊义");
		}else{
			System.out.println("集合中不包含卢俊义");
		}


IO流与异常

1.异常:就是导致程序中断的错误

	 * 异常可分为运行时异常和非运行时异常
	 * 异常需要进行处理,否则导致程序中断

2.异常处理

	 * 方式为:try...catch
	 * 把有可能出现异常的语句写在try块中
	 * 如果在try中抛出一个异常,则会在catch中捕获
	 * catch可以写多个,但是需要注意:
	 * 如果异常有继承关系在,需要把父类写在子类的后面
	 * 注:不论是否出现异常,finally块都会被执行到

3.throws关键字

	* 在方法声明时使用,代表调用该方法有可能会抛出异常
	* 根据异常的分类不同,决定调用时是否强制使用try..catch
	* 如果抛出的异常为运行时异常,不强制try...catch
	* 如果抛出的异常为非运行时异常,强制try...catch

4.throw关键字

	* 在方法中抛出异常
	* 根据抛出异常的分类不同
	* 决定是否在方法声明中添加throws
	* 如果抛出的异常为非运行时异常
	* 则需要在方法声明中使用throws声明

5.字节流的使用方式

	* 创建输入流和输出流的引用
	  File src = new File("/Users/dllo/Desktop/io/src.txt");
	  File dest = new File("/Users/dllo/Desktop/io/dest.txt");
	  FileInputStream  fis = new FileInputStream(src);
	  FileOutputStream fos = new FileOutputStream(dest);

6.字符流的使用方式

   * 创建输入流和输出流的引用

     File src1 = new File("/Users/dllo/Desktop/io/src1.txt");

     File dest1 = new File("/Users/dllo/Desktop/io/dest1.txt");

     FileReader fr = new FileReader(src1);

     FileWriter fw = new FileWriter(dest1);

Java基础-类

标签:

原文地址:http://www.cnblogs.com/wlansblog/p/5720645.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!