java 基础1

public class Point {

int x;

int y;
public String toString() {

/*

 * this 表示当前实例

 * 正在执行,正在调用的实例

 * this. 可以省略,缺省存在

 */

return this.x + ", " + this.y;

}

  • 在构造方法中,

    • this表示正在新建的“这个”实例

l 变量

n 局部变量

u 手动初始化

u 作用域,大括号结束

u 作用域内,不能重复定义

n 成员变量

u 自动初始化成默认值

u 访问范围受访问控制符的控制

u 局部变量可以和成员变量同名


2 类
对事物、算法、逻辑、概念等的抽象定义

“类”是对象的模板、图纸

3 对象、实例
从类创建出的具体实例

每个对象占用独立的内存空间,来保存各自的属性数据

4 引用变量
保存一个实例的内存地址

理解成“遥控器”

引用变量的特殊值:null,空引用

5 构造方法
新建实例时执行的特殊方法

类必须有构造方法

如果不定义,编译器编译时,会添加默认构造方法

6 this
l this.xxxx

l this(…)

6.1 this.xxx
this是一个特殊的引用,引用当前对象的内存地址

6.2 this(…)
构造方法之间调用

目的是减少代码重复

一般从参数少的方法,调用参数多的方法

必须是首行代码

9.1 创建字符串
char[] a = {‘h’, ‘e’, ‘l’, ‘l’, ‘o’};

String s = new String(a);

l 第一种语法的简化语法:

String s = “hello”;

9.2 字符串的字面值
“hello”

如果第一次用到一个字符串字面值,会在内存中“字符串常量池”新建对象

再次使用相同字面值时,直接访问常量池中存在的实例,而不新建

package day0704;

public class Test1 {

public static void main(String[] args) {

char[] a = {'h', 'e', 'l', 'l', 'o'};

String s1 = new String(a); //内存中新分配内存空间

String s2 = "hello"; //常量池新建对象

String s3 = "hello"; //访问常量池存在的对象

System.out.println(s1);

System.out.println(s2);

System.out.println(s3);

System.out.println(s1 == s2);//内存地址不相等

System.out.println(s2 == s3);//内存地址相等

System.out.println(s1.equals(s2));//比较字符内容

9.3 字符串不可变
字符串一旦创建,他的字符串内容不可变,任何对字符串修改的操作,都是在新建字符串
字符串的加号连接效率低,因为每次连接,都是新建字符串实例

9.4 字符串的方法
length():获取字符串长度
charAt(int index):获取指定位置的字符
equals():判断两个字符串的内容是否相同,相同返回true
indexOf(String str):查找子串的起始位置下标,没有返回 -1
indexOf(String str, int start):从start 位置向后找
lastIndexOf(String str):从后向前找获取指定字符串的位置
substring(int begin):截取子串,指定开始位置一直到结束为止都会被截取到
substring(int begin,int end):截取子串,[begin, end) 指定开始位置和结束位置

10 StringBilder
可变的字符序列
封装char[]数组,提供了一组对内部字符修改的方法
常用来代替字符串,做高效率的字符串连接运算

10.1 append() 方法
sb.append(“abcabc”)
StringBuilder 内部数组默认初始长度是 16,
存满之后,翻倍增长

10.2 StringBuilder 和 StringBuffer
StringBuffer
l 是一个旧版本的类,jdk1.0
l 线程安全,效率低
StringBuilder
l 是新版本的类,jdk1.5
l 线程不安全,效率高
10.3 StringBuilder的方法
append()
追加内容
insert(i, str)
插入子串
delete(start, end)
删除 [start, end)
deleteCharAt(i)
删除单个字符

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值