局部内部类为什么只能访问final局部变量,对于成员变量却可以随便访问? public class OuterClass { private int memberField = 10; public void outerDo(){ final int localField = fromOther(); class InnerClass{ public void innerDo(){ memberField = localField; } }; } private int fromOther()…
变量名首写字母使用小写,如果由多个单词组成,从第2个单词开始的其他单词的首写字母使用大写. 如果局部变量的名字和成员变量的名字相同, 要想在该方法中使用成员变量,必须使用关键字this class People { String name = "类体重定义的name";         //类中的成员变量并赋值 People(){ } public void speak() { String name = "类体方法中定义的name";       //在方法spe…
一:jdk7新特性 可以表示二进制数值,以0b开头,中间可以使用下划线_分隔符.如下: @Test /** * 测试jdk新特性 */ public void testJdk7(){ int a=0b00000000000000000000000000000011; int b=0b0000_0000_0000_0000_0000_0000_0000_0011 System.out.println("a="+a+"\n"+"b="+b); } 二…
局部变量与成员变量:  局部变量:定义在方法里面的变量就叫做局部变量:没有默认的初始值,使用变量之前必须给它赋值成员变量:定义在类下面的变量叫做成员变量:如果是数值类型默认初始值为0 如果是引用类型默认初始值为空 变量作用域: 范围 变量在那些范围可以访问到 在对应的大括号里面能访问 Console.WriteLine() Console.Out.WriteLine() 可变参数: params int [] arr arr为一个可变数组 可以给多个元素 也可以只给一个 也可以不给,若一个参数都…
在java中,如果类里面的变量是声明了private的,那么只能在被类中访问,外界不能调用,如果是protected类型的,只能在子类或本包中调用,俗话说没有不透风的墙.但是可以利用java中的反射从而在外界调用private.protected的变量或方法 package reflect; public class PrivateCar { //private成员变量:在传统的类实例调用方式,只能在本类中访问 private String color; //protected方法:使用传统的类…
一.局部变量 存在某个方法中的变量就叫局部变量,局部变量一旦声明就必须赋值 否则不能使用 代码如下: class Person { String name; char sex; int age; public void eat(){ int num = 10;//不进行赋值是在方法体内不能用的 编译的时候就会报错 尚未初始化变量 System.out.println(num+"吃"); } public void sleep(){ System.out.println("睡觉…
问题:Java反射机制可以动态修改实例中final修饰的成员变量吗? 回答是分两种情况的. 1. 当final修饰的成员变量在定义的时候就初始化了值,那么java反射机制就已经不能动态修改它的值了. 2. 当final修饰的成员变量在定义的时候并没有初始化值的话,那么就还能通过java反射机制来动态修改它的值. 实验: 1. 当final修饰的成员变量在定义的时候就初始化了值 public Class Person { private final String name = "damon.hua…
类(Class)的概念 类是对一组具有相同特征和行为的对象的抽象描述. 理解: [1] 类包含了两个要素:特性和行为 => 同一类事物具有相同的特征和行为. [2] 类是一个群体性概念.例如:网红.明星.草根.宅男.萝莉.沙雕 [3] 类可以理解为现实生活中所说的 “类型” 为什么会有类的概念? 现实生活中为了更好的区分事物,把事物进行归类,进而更好的认识事物. 在程序中,引入类的概念,就是为了快速生成更多的具有相同特性和行为的事物 对象的概念 对象是类的具体实现,表示一个独立的.唯一的个体.…
类中被final修饰的成员变量需要初始化,否则编译不通过,因为final修饰后不能再赋值,因此必须初始化.…
JAVA中局部变量 和 成员变量有哪些区别 1.定义的位置不一样<重点>***局部变量:在方法的内部成员变量:在方法的外部,直接写在类当中 2.作用范围不一样<重点>***局部变量:只有方法当中才可以使用,出了方法就不能再用成员变量:整个类全都可以通用. 3.默认值不一样<重点>***局部变量:没有默认值,如果想要使用,必须手动进行赋值成员变量:如果没有赋值,会有默认值,规则和数组一样 4.内存的位置不一样(了解)局部变量:位于栈内存成员变量,位于堆内存. 5.生命周期…