java基础 第十一章(多态、抽象类、接口、包装类、String)

一、多态

1.多态存在于继承和接口中。

2.不确定行为放在父类中。

3.子类必须重写父类中的不确定行为。

二、抽象类

1.关键字 abstract。

例:public abstract class Shap{

public abstract void View();

}

2.抽象类中放不确定的行为方法。

3.不能构建实例,因为有抽象方法。

4.抽象类中有构造函数,方法和属性。

子类默认调用父类的无参构造函数。

如果父类中是有参构造函数,子类也要有构造函数来调用,关键字  super。

三、接口

1.放多态方法。

2.创建——> Interface。

3.子类的关键字  implements 类名。

四、包装类

1.包装类就是对象类型。

2.Integer

(1)可接收null值,但是涉及计算时,不要赋null值,会报空指针异常。

(2)Integer b = new Integer(100);

Integer b = 100; // 有自动装箱功能。

System.out.println( b++ ); //自动拆箱功能

例:Integer a = 200;

Integer b = 200;

System.out.println(a == b); //false

== 同一对象比较

System.out.println( a.equals(b) ) // true

equals 对象的值比较

(3)方法

intValue(), doubleValue(), byteValue(), floatValue(), longValue(), shortValue(), toString(),parseInt()//字符串转为整型数字

例:int  V1 = b.intValue();

3.Byte

(1)Byte a = 100;

(2)方法和Integer 大同小异。

Byte b  =  a.parseByte("100"); //要是标准的数字字符串转为字节。

4.Boolean

(1)Boolean  a = true;

(2)方法

a.booleanValue();

a.toString();

a.parseBoolean() ;

例:String s = "true";

boolean a = Boolean.parseBoolean(s);

System.out.println(a); // true

当s为其他值时 显示 false

5.Character

(1)Character c = ‘a‘;

(2)方法

charValue()

isLetter() //是否是一个字母

isDigit() //是否是一个数字字符

isWhiteSpace() //是否是一个空格

isUpperCase() //是否大写字母

toUpperCase() //指定大写形式

五、字符串 String

1.String message = new String("hello world");

String hello = "hello world";

2.字符串池

例:(1)String message = ”hello world”;

String hello = "hello world";

System.out.println(message == hello); //true

当字符串池已经有hello world了  两个对象就会用字符串中的同一个hello world。

(2)String message = new String( ”hello world”);// 如果加上 .intern(),就会利用字符串池,否则new的会不利用字符串池

String hello = "hello world";

System.out.println(message == hello); //false

3.字符串的不可变性

String a ="hello";

String b = "hello‘;

b = b + "world";

System.out.println(a); //hello

此时字符串池中有 hello 、world、hello world

4.减少字符串池中的垃圾

StringBuffer  bf =  new StringBuffer();

bf.append("hello");

bf.append("world");

bf.toString();

只是字符串池中只有  hello world

5.String 的方法

(1)length(); //字符串长度

(2)equals(); //对象的值比较

(3)indexOf(); //字符串首次在查找的字符串的位置,下标从0开始,没有找到返回-1

(4)lastIndexOf(); //从末尾查找字符串首次出现的位置,下标值也是从开始数

(5)replace(换,替); //t替换指定的字符串

(6)split(); //返回一个数组,拆分字符串

例:String stu1 = "李明-20-男";

String stu[] = stu1.split("-");

System.out.println(stu[1]); // 20

(7)substring(开始,结束); // 截取指定长度字符串,没有结束值,截取到末尾

(8)toUppercase(); //小写转大写

(9)toLowerCase(); //大写转小写

(10)charAt(); //取字符串中的第n个字符

(11)concat(); //连结字符串

(12)contains(); //该字符串是否存在于查找的字符串中

(13)endsWith(); //判断末尾包含该字符串吗,可判断文件类型

例:a.endsWith(".mp4");

(14)startsWith(); //判断开头包含该字符串吗,可判断URL协议

例:url.startsWith("http://‘);

(15)equalsIgnore(); //忽略大小写,判断值比较

(16)getByte(); //得到字节

原文地址:https://www.cnblogs.com/catcoffer/p/9007145.html

时间: 2024-10-28 08:26:53

java基础 第十一章(多态、抽象类、接口、包装类、String)的相关文章

java基础三 [深入多态,接口和多态](阅读Head First Java记录)

抽象类和抽象方法 1.抽象类的声明方法,在前面加上抽象类的关键词abstract abstract class canine extends animal{ public void roam(){} } 抽象类除了被继承过之外,是没有用途,没有值,没有目的.类中的方法可以当做子类的合约内容,合约是对其他程序的承诺协议 抽象类中可以带有抽象和非抽象的方法 如果类中有抽象方法,则类必定标识为抽象的. 2.抽象的方法没有实体 (因为方法中的程序代码没有意义.抽象类需要被extend过有意义,抽象方法一

java基础(十一章)

一.理解什么是类和对象               万事万物皆对象 1.属性--对象具有的特征(特点) 2.方法--对象可执行的操作(能干什么事) 3.对象的定义: 是一个客观存在的,看的见或摸得着的实体,由属性和方法构成 4.类是由对象抽象出来的,看不见也摸不着 5.类和对象的关系? 类(是笼统)是模子是对象的抽象化,对象(具体的)是类的具体化 二.封装--包装(把一个事物包装起来,并尽可能隐藏内部细节) 1.2种表现形式:属性和方法 2.封装的作用: 隐藏内部实现的细节,使之操作简单方便 3

“全栈2019”Java第六十一章:如何实现接口?

难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第六十一章:如何实现接口? 下一章 "全栈2019"Java第六十二章:接口与常量详解 学习小组 加入同步学习小组,共同交流与进步. 方式一:关注头条号Gorhaf,私信"Java学习小组". 方式二:关注公众号Gorhaf,回复"Java学习小组".

“全栈2019”Java第三十一章:二维数组和多维数组详解

难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第三十一章:二维数组和多维数组详解 下一章 "全栈2019"Java第三十二章:增强for循环Foreach语法 学习小组 加入同步学习小组,共同交流与进步. 方式一:关注头条号Gorhaf,私信"Java学习小组". 方式二:关注公众号Gorhaf,回复"Ja

“全栈2019”Java第七十一章:外部类访问静态内部类成员详解

难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第七十一章:外部类访问静态内部类成员详解 下一章 "全栈2019"Java第七十二章:静态内部类访问外部类成员 学习小组 加入同步学习小组,共同交流与进步. 方式一:关注头条号Gorhaf,私信"Java学习小组". 方式二:关注公众号Gorhaf,回复"Jav

java基础之【继承--->多态】内存图

执行流程 1:Animal a = new Cat(); 1.1:在栈中创建区域,类型为Animal,变量名:a; 1.2:在堆中new Cat();占用一块区域.地址值:[0x3a4] 1.3:spuer()实例化父类Animal. 1.3.1:new Animal();占用一块区域,地址值:0x3ab; 1.3.2:引用着在方法区中初始化[Animal中的所有方法,该引用为:[0x754]]. 1.3.3:将Animal()引用赋给spuer();spuer引用着Animal(); 1.4:

Java基础12 类型转换与多态(转载)

类型检查 Java的任意变量和引用经过类型声明(type declaration),才能使用.我们之前见过对象数据.类数据.方法参数.方法返回值以及方法内部的自动变量,它们都需要声明其类型.Java是一种强类型(strongly typing)语言,它会对类型进行检查.如果我们错误的使用类型,将造成错误. 比如在下面的Test类中,我们将一个Cup类对象赋予给aPerson类引用: public class Test{    public static void main(String[] ar

java基础(一章)

java基础(一章) 1.            java是一种面向对象的高级编程语言. 2.            java包括:              javase(java基础)               javaee(java企业级应用) 一.        用记事本编写java程序 1.               创建扩展名为.java的java源文件 2.               编译java源文件,产生扩展名为.class的字节码文件 在dos命令窗口中,输入 [ ja

java基础(三章)

java基础(三章) 一.基本if结构 1.流程图 l  输入输出 l  判断和分支 l  流程线 1.1              简单的if条件判断 if(表达式){            //表达式为true,执行{}中的代码 } 1.2              简单的if条件判断 if(表达式){            //表达式为true,执行这里 }else{            //表达式为false,这行这里 } 说明:如果if或else后面,有且仅有一行代码,{ }可以省略