《java入门第一季》之面向对象(构造方法)
/*
构造方法:
给对象的数据进行初始化 格式:
A:方法名与类名相同
B:没有返回值类型,连void都没有
C:没有具体的返回值
*/
class Student {
private String name; //null
private int age; //0 public Student() {
System.out.println("这是构造方法");
}
} class ConstructDemo {
public static void main(String[] args) {
//创建对象
Student s = new Student();//从这里就有一次调用无参构造的过程。打印输出: 这是构造方法。
System.out.println(s); //Student@e5bbd6
}
}
/*
我们一直在使用构造方法,但是,我们确没有定义构造方法,用的是哪里来的呢? 构造方法的注意事项:
A:如果我们没有给出构造方法,系统将自动提供一个无参构造方法。
B:如果我们给出了构造方法,系统将不再提供默认的无参构造方法。
注意:这个时候,如果我们还想使用无参构造方法,就必须自己给出。建议永远自己给出无参构造方法 给成员变量赋值有两种方式:
A:setXxx()
B:构造方法
*/ class Student {
private String name;
private int age; //自己给出构造方法定义
public Student() {
System.out.println("这是无参构造方法");
} //构造方法的重载格式
public Student(String name) {
System.out.println("这是带一个String类型的构造方法");
this.name = name;
} public Student(int age) {
System.out.println("这是带一个int类型的构造方法");
this.age = age;
} public Student(String name,int age) {//带多个参数的构造方法
System.out.println("这是一个带多个参数的构造方法");
this.name = name;
this.age = age;
} public void show() {
System.out.println(name+"---"+age);
}
} class ConstructDemo2 {
public static void main(String[] args) {
//创建对象
Student s = new Student();//会默认调用无参构造,打印输出 这是无参构造方法
s.show();//null---0
System.out.println("-------------"); //创建对象2
Student s2 = new Student("林青霞");//方法重载,自动锁定public Student(String name){},对里面的内容有一次调用
s2.show();//林青霞---0*//
System.out.println("-------------"); //创建对象3
Student s3 = new Student(27);//方法重载,自动锁定public Student(int age){},对里面的内容有一次调用
s3.show();//null--27
System.out.println("-------------"); //创建对象4
Student s4 = new Student("林青霞",27);//传递多个实际参数,自动锁定public Student(String name,int age,String sex){}
s4.show();//林青霞---27
}
}
如果您觉得对您有帮助,欢迎写下建议和指正。谢谢。
《java入门第一季》之面向对象(构造方法)的更多相关文章
- JAVA入门第一季(mooc-笔记)
		笔记相关信息 /** * @subject <学习与创业>作业1 * @author 信管1142班 201411671210 赖俊杰 * @className <JAVA入门第一季 ... 
- Java入门第一季——从此投身Java??
		找工作告一段落. 最后的工作呢,和java紧密相关,也是阴差阳错,不过都是软件开发,都好了,不过以后侧重点肯定是在java这边,php有机会还是一直学下去的,那么美的说~ Java开发第一季 一.简 ... 
- 《java入门第一季》之面向对象(this和super详细分析)
		此文章来自于书籍,里面介绍了this和super详细的区别.当然在后边的文章中还有涉及super的时候还会分析. Java关键字this.super使用总结 一.this Java关键字this只能用 ... 
- 《java入门第一季》之面向对象(谈谈接口)
		软件中有接口,这里的接口与硬件中的接口还是有很大区别的. 这里介绍接口不考虑JDK8的新特性(JDK8开始接口里面可以有非抽象方法了,介绍JDK8新特性可能要到整个第一季写完吧!) 还是直接进入接口的 ... 
- Java入门第一季
		慕课网:http://www.imooc.com/learn/85 Java入门知识第一季 1.Java开发环境和IDE的使用: 2.变量和常量 3.常用的运算符 4.流程控制语句 5.数组:使用Ar ... 
- 《java入门第一季》之Arrays类前传(排序案例以二分查找注意的问题)
		根据排序算法,可以解决一些小案例.举例如下: /* * 把字符串中的字符进行排序. * 举例:"dacgebf" * 结果:"abcdefg" * * 分析: ... 
- 《java入门第一季》之面向对象面试题(继承中构造方法的关系)
		/* 继承中构造方法的关系 A:子类中所有(子类的有参和无参)的构造方法(默认都会访问父类)中(空参数)的构造方法,默认访问父类空参数构造,不默认访问有参数构造 B:为什么呢? 因为子类会继承父类中的 ... 
- 《java入门第一季》之面向对象(面向对象案例详解)
		通过几个小案例理重新回顾一下前面所写的内容,对面向对象的理解更加深刻的目的: 案例一: /* 需求: 定义一个员工类,自己分析出几个成员, 然后给出成员变量,构造方法,getXxx()/setXxx( ... 
- 《java入门第一季》之面向对象(包概述)
		由于eclipse等ide的强大功能,使得建包,导包用一些快捷键就能完成.这里对包的概念做稍微的叙述,了解即可: 分包后使得项目更加清晰,提高代码维护性. 包: A:其实就是文件夹 ... 
随机推荐
- 学习TensorFlow,调用预训练好的网络(Alex, VGG, ResNet etc)
			视觉问题引入深度神经网络后,针对端对端的训练和预测网络,可以看是特征的表达和任务的决策问题(分类,回归等).当我们自己的训练数据量过小时,往往借助牛人已经预训练好的网络进行特征的提取,然后在后面加上自 ... 
- FORM开发实现动态LOV
			方法一.设置lov的记录组 IF :mat_trx.trx_action_id = 1 THEN set_lov_property('lot_number',group_name,'lot_issue ... 
- Swift中如何转换不同类型的Mutable指针
			在Swift中我们拥有强大高级逻辑抽象能力的同时,低级底层操作被刻意的限制了.但是有些情况下我们仍然想做一些在C语言中的hack工作,下面本猫就带大家看一看如何做这样的事. hacking is ha ... 
- 【Netty源码分析】数据读取过程
			首先客户端连接到服务端时服务端会开启一个线程,不断的监听客户端的操作. 
- 5.1、Android Studio用Logcat编写和查看日志
			Android Studio在Android Monitor中包含了一个logcat的tab,可以打印系统事件,比如垃圾回收发生时,实时打印应用消息. 为了显示需要的信息,你可以创建过滤器,更改需要显 ... 
- 【java多线程系列】java内存模型与指令重排序
			在多线程编程中,需要处理两个最核心的问题,线程之间如何通信及线程之间如何同步,线程之间通信指的是线程之间通过何种机制交换信息,同步指的是如何控制不同线程之间操作发生的相对顺序.很多读者可能会说这还不简 ... 
- 【Android应用开发】Android Studio - MAC 版 - 快捷键详解
			博客地址 : http://blog.csdn.net/shulianghan/article/details/47321177 作者 : 韩曙亮 要点总结 : -- 熟练使用快捷键 : 在任何编程环 ... 
- 最简单的基于FFmpeg的libswscale的示例附件:测试图片生成工具
			===================================================== 最简单的基于FFmpeg的libswscale的示例系列文章列表: 最简单的基于FFmpeg ... 
- 【一天一道LeetCode】#226. Invert Binary Tree
			一天一道LeetCode 本系列文章已全部上传至我的github,地址:ZeeCoder's Github 欢迎大家关注我的新浪微博,我的新浪微博 欢迎转载,转载请注明出处 (一)题目 来源:http ... 
- iOS中 动态热修补技术JSPatch 韩俊强的博客
			.1.4) JSPatch bridge Objective-C and JavaScript. You can call any Objective-C class and method in Ja ... 
