JAVA DAY03
局部变量与成员变量
1.在类中的位置不同
成员变量 类中,方法外
局部变量 方法中或者方法声明上(形式参数)
2.作用范围不一样
成员变量 类中
局部变量 方法中
3.初始化值不同
成员变量 有默认值
局部变量 没有默认值 必须先定义 赋值 最后使用
4,在内存中的位置
成员变量 在堆中
局部变量 在栈中
5.生命周期不同
成员变量 随着对象的创建而存在,随着对象的消失而消失
局部变量 随着方法的调用而存在 随着方的调用完毕而消失
封装
将属性隐藏起来,若要访问某个属性 提供公共方法对其访问
private是一个权限修饰符 代表最小权限
可以修饰成员变量 和成员方法
被private 修饰后的成员和成员方法 再有在本类中才能访问
this
this 代表所在类的当前对象的引用(地址值)即对象自己的引用
方法被哪一个对象调用,方法中的this就代表那个对象,
下面展示一些 内联代码片
。
this
public void setname(string name)
{
this.name=name;
}
构造方法
当一个对象被创建的时候,构造方法是用来初始化对象的成员变量,无论你是否自定义构造方法,所有类都有构造方法,因为java自动提供了无参数构造方法,一旦自己定义了构造方法,那么系统自动提供的默认无参数构造方法就会失效。
构造方法是可以重载的,即可以定义有参数的也可以定义无参数的
API
API 是指应用程序编程接口的意思,jdk提供给程序员使用的类的说明文档,这些类将底层的代码实现封装了起来,
Scanner Java程序可以从键盘上读取用户输入
Scanner sc=new Scanner(system.in)
int i-sc.nextint();
匿名对象
创建对象时,只创建对象的语句,却没有把对象地址赋值给某个变量
匿名对象可以作为方法的参数和返回值
对象数组,只能是定长的,
ArrayList 是一个可变的数组的实现,存储在内的数据称为元素,可以不断的添加元素,大小也自动增加
ArrayList<string>list=new ArrayList<string>()
成员方法为add remove get size
string
成员方法为length concat charAT 返回指定索引的值indexof返回指定字符串第一次出现在该字符串内的索引
public string substring (int beginindex,int endindex)
static 关键字
static关键字的使用,它可以用来修饰成员变量和成员方法,被修饰的成员属于类的,而不是单单属于某一个对象的,也就是说,既然属于类了,就不可以靠创建对象来调用了
当static修饰成员变量时,该变量称为类变量,该类的每一个对象共享同一个类变量的值,任何对象都可以更改该类变量的值,但也可以在不创建该类的对象下对类变量进行操作
静态方法 直接用类名调用,使用特别方便
静态方法可以直接访问类变量和静态方法
静态方法不能直接访问普通成员变量或成员方法,成员方法可以直接访问类变量和静态方法
静态方法 不能直接使用this关键字
静态方法只能访问静态成员
static 修饰的内容,是随着类的加载而加载 而且只加载一次
存储在一块固定的区域静态区 所以可以直接使用类名访问
它优于对象存在
普通成员变量在堆中操作自己各自的空间
静态成员操作共享空间
静态代码块 定义在成员位置 使用关键字修饰的代码块
随着类的加载而执行一次 优先于mian方法和构造方法的执行
static关键字 可以修饰变量 方法 代码块 主要目的是在不创建对象的情况下,去调用方法,arrays.tostring math.abs