JAVA面向对象 Part02 String常用Api , this static关键字
2017-03-07 21:00
495 查看
String
值传递/引用传递
java中只有值传递
其实 JAVA 中只有值传递,在栈中存储的数据,如果是基本数据类型,
那就是具体值,如果在栈中存储的是引用类型,那么就是地址,在变量赋值时,会把当然变量的值复制一份赋给另一个变量。
对象的一对一关系
在开发过程中,对象之间的关系一般表现为三种:
一对一
把一个对象类型作为另一个对象类型的属性,并提供getter/setter
一对多(多对一)
多对多
this关键字
调用构造方法
调用属性/方法
表示当前对象
内部类访问外部类对象,
使用类名.this
static关键字
静态变量
static数据存储在静态方法区中,
该类的所有对象共享一份静态数据
第一次装载字节码的时候就会被初始化,
无论是否使用
常驻内存
静态变量不属于对象,
是类变量
不建议使用对象名称访问静态数据
静态方法
类名调用
方法内部不存在当前对象,
不能使用this, super,
不能使用非静态变量,
不能调用非静态方法
静态内部类
静态初始器——静态块
静态初始器是一个存在与类中方法外面的静态块,仅仅在类装载的时候执行一次,通常用来初始化静态的类属性。
何时使用
需要定义一个全局的变量供所有对象共享时
当需要定义工具类时,
可以使用静态方法
当定义一个常量
public final
加static后可以直接调用,
并且节省内存,
见名知意.
API
Extends
GBK GB2312 BIG5 Latin1/ISO-8859-1
Latin1是ISO-8859-1的别名,有些环境下写作Latin-1。ISO-8859-1编码是单字节编码,向下兼容ASCII,其编码范围是0x00-0xFF,0x00-0x7F之间完全和ASCII一致
entity vo(value object / view object) dto(data transfer object)
Notice
lang包不需要导包
char数组,
直接输出为字符排列
方法区存储,
字节码文件,
静态数据
构造方法不可以为static,
因为构造器和对象有关
定义方法/变量,
优先private,
安全/隐藏.
charAt(int index) | char | |
toCharArray() | char[] | 系统复制一份新数组方法 |
String(char[] c, int offset, int length) | | |
String(char[] c) | | |
String(byte[] b, String charsetName/Charset charset) | | |
String(byte[] b, int offset, int length[, String charsetName/Charset charset]) | | |
getBytes() | byte[] | 字符串转为字节数组, 默认 |
getBytes(Charset.forName("GB2312")) | byte[] | |
startsWith(char c) | boolean | |
endsWith(char c) | boolean | |
replace(char c, Char new) | String | 新字符串 |
replace(CharSequence charSequence, CharSequence new) | String | |
replaceAll(rex, String) | String | |
replaceFirst(rex, String) | String | |
substring(int begin) | String | |
substring(int begin, int end) | String | [begin, end) |
split(String regex) | String[] | |
split(String regex, length) | String[length] | |
containts(String s) | boolean | |
indexOf(int ch/String s)/lastIndexOf | int | |
indexOf(int ch/String s, int fromIndex)/lastIndexOf | init | |
isEmpty() | int | |
length() | int | |
toLowerCase() | String | |
toUpperCase() | String | |
trim() | | 开头结尾的空白字符 |
concat(String) | String | 字符串连接 |
valueOf(*) | String | 内部实现 *.toString() |
equals(String s) | boolean | |
值传递/引用传递
java中只有值传递
其实 JAVA 中只有值传递,在栈中存储的数据,如果是基本数据类型,
那就是具体值,如果在栈中存储的是引用类型,那么就是地址,在变量赋值时,会把当然变量的值复制一份赋给另一个变量。
对象的一对一关系
在开发过程中,对象之间的关系一般表现为三种:
一对一
把一个对象类型作为另一个对象类型的属性,并提供getter/setter
一对多(多对一)
多对多
this关键字
调用构造方法
调用属性/方法
表示当前对象
内部类访问外部类对象,
使用类名.this
static关键字
静态变量
static数据存储在静态方法区中,
该类的所有对象共享一份静态数据
第一次装载字节码的时候就会被初始化,
无论是否使用
常驻内存
静态变量不属于对象,
是类变量
不建议使用对象名称访问静态数据
静态方法
类名调用
方法内部不存在当前对象,
不能使用this, super,
不能使用非静态变量,
不能调用非静态方法
静态内部类
静态初始器——静态块
静态初始器是一个存在与类中方法外面的静态块,仅仅在类装载的时候执行一次,通常用来初始化静态的类属性。
何时使用
需要定义一个全局的变量供所有对象共享时
当需要定义工具类时,
可以使用静态方法
当定义一个常量
public final
加static后可以直接调用,
并且节省内存,
见名知意.
API
System.arraycopy(original, oPos, dest, destPos, length) | void | 内存映射, 效率高 |
Extends
GBK GB2312 BIG5 Latin1/ISO-8859-1
Latin1是ISO-8859-1的别名,有些环境下写作Latin-1。ISO-8859-1编码是单字节编码,向下兼容ASCII,其编码范围是0x00-0xFF,0x00-0x7F之间完全和ASCII一致
entity vo(value object / view object) dto(data transfer object)
Notice
lang包不需要导包
char数组,
直接输出为字符排列
方法区存储,
字节码文件,
静态数据
构造方法不可以为static,
因为构造器和对象有关
定义方法/变量,
优先private,
安全/隐藏.
相关文章推荐
- 黑马程序员-------- java面向对象 封装、构造函数、this static关键字、单例设计
- Java语言基础-常用对象API(一)String、StringBuffer
- java对象转为java String的几种常用方法剖析
- PHP面向对象中的常用关键字 小解
- PHP面向对象中常用关键字和魔术方法
- 将java对象转为java String的几种常用方法剖析
- 黑马程序员--03.Java面向对象--02.【static关键字】【main方法】【静态成员】
- Java对象转为String的几种常用方法
- Java语言基础-常用对象API(二)集合框架
- 黑马程序员--03.Java面向对象--06.【final关键字】【抽象类】【接口】
- 黑马程序员_Java学习日记_JAVA中API中对象String和StringBuffer/StringBuilder
- Java面向对象基础--String类中常用的方法
- java对象转为java String的几种常用方法剖析
- php学习笔记------[php面向对象中常用关键字与魔术方法]
- java对象转为java String的几种常用方法剖析
- java对象转为java String的几种常用方法剖析
- java对象转为java String的几种常用方法剖析
- 面向对象--常用关键字
- Java--面向对象之一:面向对象概念、类和对象的关系、封装、构造函数、this关键字、static关键字
- 第三十五天 面向对象part5 String 类的常用方法