关于CodeJava的学习笔记——1

一、数组

对于数组的操作:

1、System.arrayopy(旧数组,下表,新数组,下表,长度)

 2、新对象 = Arrays.copyOf(旧数组,长度);

\\如果要删除数组中的一个元素,先用1、直接把这个元素覆盖掉

\\然后用2,将数组大小-1

二、封装、继承、多态(抽象)

1、封装

        将一些属性私有化、不让外部可以随意修改

2、继承

        只能单根继承;
        不能出现一个类有两个父类,但是一个父类可以有多个子类;

3、多态

        当我们创建一个对象,这个对象可以调用本类以及其父类的方法,但是不能调用子类的方法;

三、方法重载和方法覆盖

1、重载

<1>在同一个类内的多个方法
<2>方法名一样
<3>方法参数不同

2、覆盖

<1>权限>=父类
<2>返回类型和方法名一模一样
<3>异常范围<=父类
注意:重载发生在同一个类里(构造方法也可以重载),而覆盖发生在不同的类体里面
        我们在进行对象之间的比较时,经常会覆盖以下方法来满足一些方法的正常使用
@Override
public String toString( ) {
    return XXX; 
}
//return new StringBuffer(xxx)   //用于加快效率   
//.append(yyy)

@Override
public boolean equals(Object obj){ 
    if(this == obj)return true; 
}

@Override
public int hashCode(){ 
    return score + name.hashCode(); 
} 
//return Objects.hash(name);

四、构造方法

1、构造方法的名字与类名一致

2、构造方法没有返回类型

3、在构造方法的首行会出现this(); / super();

<1>this:执行本构造方法前,先执行其他的构造方法,执行那个根据参数来看

<2>super:提供父类的无参构造方法,也可以传参数进去,先执行父类的构造方法

这俩只能出现一个,不写默认()里面为空。

五、关于String的方法

1、String

返回类型       方法名

byte[]           getBytes() 将一个字符串转换成字节数组 

char[]           toCharArray() 将一个字符串转换成字符数组 

String[]          split(String) 将一个字符串按照指定的内容劈开

boolean          equals(String) 区分大小写的判断两个字符串的内容是否一样 

boolean          equalsIgnoreCase(String) 不区分大小写的比较

boolean          contains(String) 判断一个字符串里面是否包含某个内容   

boolean            startsWith(String) 是否以指定的内容开头 

boolean          endsWith(String) 是否以指定的内容结尾

String           toUpperCase() 将一个字符串全部转换成大写 

String          toLowerCase() 将一个字符串全部转换成小写 

String           replace(String,String) 

String           replaceAll(String,String)支持正则表达式 

String          replaceFirst(String,String)

String           trim() 去除字符串的前后空格 

String           substring(int x,int y)从下标x一直截取到下标y-1对 应的元素 

String           substring(int x)从下标x一直截取到字符串的最后

char   charAt(int) 找到某个下标对应的元素

int    indexOf(String) 找到某个内容第一次出现的下标

Int    lastIndexOf(String) 找到某个内容最后一次出现的下标

2、StringBuffer常用的方法

append(String/int/double/long内容); 追加连接 增加效率

reverse(); 反转字符串的内容

insert(int 下标,内容); 往指定的下标插入确定的内容

六、单例模式

        目前在创建比较器中有了第一次实际的用武之地。

        比较器只需要创建一次,之后直接调用这个比较器就行了。

public class TestSingle1{
	public static void main(String[] args){
		Sun x = Sun.getOnly();

	}
}
class Sun{
	private Sun(){}
//构造方法私有化,外部就不能再创建对象
	private static Sun only = new Sun();
//在内部创建这唯一一个对象,加上static让这个创建过程不会死循环
	public static Sun getOnly(){//Sun.getOnly();
		return only;//外部可以通过这个方法,把这个唯一一个对象调出去使用
	}
}

七、接口

        一个接口中定义的属性,比如 int i =  10;  都会在前面默认加上public static final这三个修饰符。

        而我们定义的任意一个方法都会默认加上public abstract.

        一个类只可以继承一个父类,但是可以继承多个接口

 class A extends B implements C,D,E...{}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值