当前位置: 首页 > wzjs >正文

网站如何做收录排行最受欢迎的十大培训课程

网站如何做收录排行,最受欢迎的十大培训课程,自学网站开发,创建公司为什么必须三个人hello!这里是敲代码的小董,很荣幸您阅读此文,本文只是自己在学习JAVA过程中的笔记,如有不足,期待您的评论指点和关注,欢迎欢迎~~ ✨✨个人主页:敲代码的小董 💗💗系列专栏…

         hello!这里是敲代码的小董,很荣幸您阅读此文,本文只是自己在学习JAVA过程中的笔记,如有不足,期待您的评论指点和关注,欢迎欢迎~~

✨✨个人主页:敲代码的小董

💗💗系列专栏:JAVA

目录

5. 对象的构造及初始化

5.1 如何初始化对象

5.2 构造方法

5.2.1 概念

5.2.2 特性

5.3 默认初始化

5.4 就地初始化


上一节:七. JAVA类和对象(一)

5. 对象的构造及初始化

5.1 如何初始化对象

        通过前面知识点的学习知道,在Java方法内部定义一个局部变量时,必须要初始化,否则会编译失败。

public static void main(String[] args) {int a;System.out.println(a);
}
// Error:(26, 28) java: 可能尚未初始化变量a

        要让上述代码通过编译,非常简单,只需在正式使用a之前,给a设置一个初始值即可。如果是对象: 

public static void main(String[] args) {Date d = new Date();d.printDate();d.setDate(2021,6,9);d.printDate();
}
// 代码可以正常通过编译

需要调用之前写的SetDate方法才可以将具体的日期设置到对象中。

通过上述例子发现两个问题:
1. 每次对象创建好后调用SetDate方法设置具体日期,比较麻烦,那对象该如何初始化?
2. 局部变量必须要初始化才能使用,为什么字段声明之后没有给值依然可以使用?

        对象初始化是为新建对象分配内存空间并设置初始值的过程。在面向对象编程中,正确的初始化是保证对象状态有效性的关键。

常见的初始化方式包括:

  • 构造方法初始化
  • 默认初始化
  • 声明时初始化(就地初始化)
// 示例:三种初始化方式的综合体现
public class Smartphone {private String brand;      // 默认初始化为nullprivate int storage = 128; // 就地初始化private double price;// 构造方法初始化public Smartphone(String brand, double price) {this.brand = brand;this.price = price;}
}

5.2 构造方法

5.2.1 概念

构造方法是类中用于初始化对象的特殊方法,具有以下特征:

  • 方法名与类名完全相同
  • 没有返回类型(包括void)
  • 在对象创建时自动调用
  • 可以重载(多个参数列表不同的构造方法)
public class Date {public int year;public int month;public int day;// 构造方法:// 名字与类名相同,没有返回值类型,设置为void也不行// 一般情况下使用public修饰// 在创建对象时由编译器自动调用,并且在对象的生命周期内只调用一次public Date(int year, int month, int day){this.year = year;this.month = month;this.day = day;System.out.println("Date(int,int,int)方法被调用了");}public void printDate(){System.out.println(year + "-" + month + "-" + day);}public static void main(String[] args) {// 此处创建了一个Date类型的对象,并没有显式调用构造方法Date d = new Date(2021,6,9); // 输出Date(int,int,int)方法被调用了d.printDate(); // 2021-6-9}
}

注意:构造方法的作用就是对 对象中的成员进行初始化,并不负责给对象开辟空间。 

5.2.2 特性

1. 名字必须与类名相同
2. 没有返回值类型,设置为void也不行
3. 创建对象时由编译器自动调用,并且在对象的生命周期内只调用一次(相当于人的出生,每个人只能出生一次)
4. 构造方法可以重载(用户根据自己的需求提供不同参数的构造方法)

public class Date {public int year;public int month;public int day;// 无参构造方法public Date() {this.year = 1900;this.month = 1;this.day = 1;}// 带有三个参数的构造方法public Date(int year, int month, int day) {this.year = year;this.month = month;this.day = day;}public void printDate() {System.out.println(year + "-" + month + "-" + day);}public static void main(String[] args) {Date d = new Date();d.printDate();}
}

        上述两个构造方法:名字相同,参数列表不同,因此构成了方法重载。 

5. 如果用户没有显式定义,编译器会生成一份默认的构造方法,生成的默认构造方法一定是无参的。

public class Date {public int year;public int month;public int day;public void printDate(){System.out.println(year + "-" + month + "-" + day);}public static void main(String[] args) {Date d = new Date();d.printDate();}
}

        上述Date类中,没有定义任何构造方法,编译器会默认生成一个不带参数的构造方法。 

注意:一旦用户定义,编译器则不再生成。 

6. 构造方法中,可以通过this调用其他构造方法来简化代码 

注意:

  • this(...)必须是构造方法中第一条语句。
  • 不能形成环。

7. 绝大多数情况下使用public来修饰,特殊场景下会被private修饰(单例模式) 

5.3 默认初始化

为什么局部变量在使用时必须要初始化,而成员变量可以不用呢?

 局部变量未初始化:

成员变量未初始化:

当成员变量未显式初始化时,Java会根据数据类型自动进行默认初始化:

5.4 就地初始化

在声明成员变量时直接赋值,这种初始化方式:

  • 在构造方法执行前完成
  • 适合固定初始值的场景
  • 可以结合构造方法混合使用
public class Student {// 就地初始化private String school = "清华大学";private final int MAX_COURSES = 6; // 常量初始化private String name;private List<String> courses = new ArrayList<>(); // 复杂类型初始化public Student(String name) {this.name = name;}public void addCourse(String course) {if(courses.size() < MAX_COURSES) {courses.add(course);}}// 使用示例public static void main(String[] args) {Student stu = new Student("王小明");stu.addCourse("计算机组成原理");System.out.println("所属院校:" + stu.school); // 输出清华大学}
}
http://www.dtcms.com/wzjs/406537.html

相关文章:

  • 沂seo网站推广竞价推广网络推广运营
  • 域名备案成功如何做网站优化 seo
  • .net做网站开发吗最新中高风险地区名单
  • 电子商务网站建设考卷怎么恶意点击对手竞价
  • 长沙公积金网站怎么做异动厦门网站制作全程服务
  • 河南天元建设公司网站宁波seo高级方法
  • 用drupal做的网站百度联盟广告收益
  • 芜湖互联网公司山东seo首页关键词优化
  • 海南房地产网站建设铜陵seo
  • 开淘宝的店铺网站怎么做留电话的广告网站
  • 专门做奢侈品的网站个人怎么在百度上做推广
  • 如何做网站的统计如何做推广最有效果
  • 做网站靠什么赚钱网站创建
  • 建立网站目录结构的意义网络营销的认识
  • 济南微信网站开发清远市发布
  • 织梦模板 行业网站seo软件推荐
  • 宁波建设银行搜索引擎优化seo优惠
  • 全屋定制十大名牌衣柜惠州seo报价
  • 高唐做网站建设的公司百度一下首页版
  • 如何建立新的企业网站营销网站定制公司
  • 移动网站设计教程百度云资源
  • 色91Av做爰网站推广关键词排名查询
  • 网站建设工具 hbuild公众号微博seo
  • 自助建微网站店铺如何运营和推广
  • 拟与 合作建设网站 请予审批西安网络公司
  • 重庆seo公司排名重庆seo代理计费
  • 天津seo公司网站什么平台推广效果最好
  • 织梦网站后台如何做百度优化本溪seo优化
  • 临沂网站公司营销策略是什么
  • 做网站卖酒关键词推广优化