TypechoJoeTheme

Clover 的博客

统计
登录
用户名
密码
/
注册
用户名
邮箱

CloverYou

日出于东却落于西,相识人海却散于席。
2022-01-02

15、Java static关键字

15、Java static关键字
静态变量以下程序中,如果创建100份,每个对象都有一个国籍,而中国人的国籍都是一样的,这样很浪费内存空间。public class Chinese { // 每个人身份证不同 String id; // 每个人名字不同 String name; //每个中国人国籍一样 String country; }那么该如何解决这个问题?所有对象的couuntry一样,这种特征属于类级别的特征,可以提升为整个模板的特征,可以在变量前添加static关键字修饰。如果某一个方法、变量使用了static修饰符,那么这个变量、方法也叫静态变量、方法。static String country;静态变量在类加载的时候初始化,不需要创建对象,内存就开辟了例如:public class Chinese { // 每个人身份证不同 String id; // 每个人名字不同 String name; //每个中国人国籍一样 static String country = "中国"; }使用: public static void main(...
CloverYou
2022-01-02

Java 基础

12 阅读
0 评论
2022年01月02日
12 阅读
0 评论
2022-01-02

14、Java this关键字

14、Java this关键字
this是一个关键字,翻译为:这个this是一个引用,this是一个变量,this变量中保存了内存地址指向自身,this存储在JVM堆内存Java对象内部。创建100个对象,每一个对象都有this,也就是说有100个不同的this没有static关键字的方法被称为实例方法没有static关键字的变量被称为实例变量实例变量、实例方法在堆内存中存储,所以访问该数据的时候,必须先创建对象,通过引用方法访问。this可以出现在“实例方法”中,this指向当前正在执行的对象。(this代表当前对象)this在多数情况下都可以省略不写。用来区分局部变量和实例变量的时候this不能省略如果一个程序执行过程中没有“当前对象”,因为带有static的方法是通过类名的方式访问的,或者说这个“上下文”当中没有"当前对象",自然也不存在this(this代表的是当前正在执行这个动作的对象)this不能使用在带有static方法中例如以下没有当前对象程序:public class User{ public String name; public static String getName(){ ...
CloverYou
2022-01-02

Java 基础

24 阅读
0 评论
2022年01月02日
24 阅读
0 评论
2022-01-02

13、Java参数传递

13、Java参数传递
对象和引用的概念:对象:目前在使用new运算符在堆内存中开辟的内存空间称为对象。引用:是一个变量,不一定是局部变量,这可能是成员变量。引用保存了内存地址,指向了堆内存当中的对象。所有访问实例相关的数据,都需要通过“引用”的方式访问,因为只有通过引用才能找到对象。如果有一个空的引用,访问对象的实例相关的数据会出现空指针异常。Java语言当中方法调用的时候涉及到参数传递的问题,参数传递实际上传递的是变量中保存的具体值。public static void main(String[] args){ int i = 10; add(i); System.out.println("main --> " + i); } public static void add(int i){ i++; System.out.println("add --->" + i); }main 方法中i变量是局部变量,i变量本身占有内存空间,所以i变量本身也有内存地址,i变量中保持的是 10 这个字面值。add(i);方法在调用的时候,实际上...
CloverYou
2022-01-02

Java 基础

17 阅读
0 评论
2022年01月02日
17 阅读
0 评论
2022-01-02

12、Java构造方法

12、Java构造方法
关于Java类中的构造方法:构造方法又被称为构造函数、构造器、Constructor构造方法语法结构:[修饰符列表] 构造方法名 (形式参数列表){构造方法体}对于构造方法来说,返回值类型不需要指定,并且也不能写void构造方法的方法名必须和类名保持一致构造方法的作用?构造方法存在的意义是,通过构造方法的调用,可以创建对象。给实例变量赋值。创建对象的同时,初始化实例变量的内存空间。构造方法应该怎么调用?构造方法必须使用new调用new 构造方法名(实参列表);构造方法执行之后,有返回值吗?每一个构造方法实际上执行结束之后都有返回值,但是这个“return 值;”这样的语句不需要写。Java程序自动返回值。返回值类型是构造方法所在类的类型。由于构造方法的返回值类型就是类本身,所以返回值类型不需要写。当一个类中没有定义任何构造方法的话,系统默认给该类提供一个无参数的构造方法,这个构造方法被称为缺省构造器当一个类显示的将构造方法定义出来了,那么系统将不再默认为这个类提供缺省构造器。建议开发中手动的为当前类提供无参数的构造法。构造方法支持重载机制,在一个类当中编写多个构造方法,这多个构造...
CloverYou
2022-01-02

Java 基础

26 阅读
0 评论
2022年01月02日
26 阅读
0 评论
2022-01-02

11、Java面向对象封装性

11、Java面向对象封装性
Student类中的age 属性在外部程序中可以随意访问,导致age属性的不安全。一个Student对象表示一个用户,年龄不可能等于负数,以下程序当中年龄值为负数,程序运行的时候并没有报错,这是当前程序存在的缺陷。public class MainApplication { /** * 程序的主入口 * @param args 主方法默认参数 **/ public static void main(String[] args){ Student St = new Student(); St.address = "湛江"; St.age = -17; St.name = "张美美"; } }Student.classpublic class Student { public String name; public int age; public String address; }面向对象包括三大...
CloverYou
2022-01-02

Java 基础

23 阅读
0 评论
2022年01月02日
23 阅读
0 评论
CloverYou
日出于东却落于西,相识人海却散于席。
88 文章数
11 评论量
IP信息

人生倒计时

今日已经过去小时
这周已经过去
本月已经过去
今年已经过去个月

最新回复

  1. 缓存一致性 - 点击领取
    2022-01-06
  2. 宝宝
    2022-01-02

标签云