本视频是解读性视频,所以希望您已经看过了本知识点的内容,并且编写了相应的代码之后,带着疑问来观看,这样收获才多。 不建议一开始就观看视频
10分4秒 本视频采用html5方式播放,如无法正常播放,请将浏览器升级至最新版本,推荐火狐,chrome,360浏览器。 如果装有迅雷,播放视频呈现直接下载状态,请调整 迅雷系统设置-基本设置-启动-监视全部浏览器 (去掉这个选项)。 chrome 的 视频下载插件会影响播放,如 IDM 等,请关闭或者切换其他浏览器 步骤 1 : 什么是构造方法 步骤 2 : 隐式的构造方法 步骤 3 : 如果提供了一个有参的构造方法 步骤 4 : 构造方法的重载 步骤 5 : 练习-构造方法 步骤 6 : 答案-构造方法
方法名和类名一样(包括大小写)
没有返回类型 实例化一个对象的时候,必然调用构造方法 public class Hero {
String name;
float hp;
float armor;
int moveSpeed;
// 方法名和类名一样(包括大小写)
// 没有返回类型
public Hero() {
System.out.println("实例化一个对象的时候,必然调用构造方法");
}
public static void main(String[] args) {
//实例化一个对象的时候,必然调用构造方法
Hero h = new Hero();
}
}
Hero类的构造方法是
public Hero(){ } 这个无参的构造方法,如果不写,就会默认提供一个 public class Hero {
String name; //姓名
float hp; //血量
float armor; //护甲
int moveSpeed; //移动速度
//这个无参的构造方法,如果不写,
//就会默认提供一个无参的构造方法
// public Hero(){
// System.out.println("调用Hero的构造方法");
// }
public static void main(String[] args) {
Hero garen = new Hero();
garen.name = "盖伦";
garen.hp = 616.28f;
garen.armor = 27.536f;
garen.moveSpeed = 350;
Hero teemo = new Hero();
teemo.name = "提莫";
teemo.hp = 383f;
teemo.armor = 14f;
teemo.moveSpeed = 330;
}
}
一旦提供了一个有参的构造方法
同时又没有显式的提供一个无参的构造方法 那么默认的无参的构造方法,就“木有了“ public class Hero {
String name; //姓名
float hp; //血量
float armor; //护甲
int moveSpeed; //移动速度
//有参的构造方法
//默认的无参的构造方法就失效了
public Hero(String heroname){
name = heroname;
}
public static void main(String[] args) {
Hero garen = new Hero("盖伦");
Hero teemo = new Hero(); //无参的构造方法“木有了”
}
}
和普通方法一样,构造方法也可以重载
public class Hero {
String name; //姓名
float hp; //血量
float armor; //护甲
int moveSpeed; //移动速度
//带一个参数的构造方法
public Hero(String heroname){
name = heroname;
}
//带两个参数的构造方法
public Hero(String heroname,float herohp){
name = heroname;
hp = herohp;
}
public static void main(String[] args) {
Hero garen = new Hero("盖伦");
Hero teemo = new Hero("提莫",383);
}
}
为Hero设计4个参数的构造方法
这四个参数分别是 String heroName float heroHP float heroArmor int heroMoveSpeed
在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
本视频是解读性视频,所以希望您已经看过了本答案的内容,带着疑问来观看,这样收获才多。 不建议一开始就观看视频
2分43秒 本视频采用html5方式播放,如无法正常播放,请将浏览器升级至最新版本,推荐火狐,chrome,360浏览器。 如果装有迅雷,播放视频呈现直接下载状态,请调整 迅雷系统设置-基本设置-启动-监视全部浏览器 (去掉这个选项)。 chrome 的 视频下载插件会影响播放,如 IDM 等,请关闭或者切换其他浏览器 public class Hero {
String name; //姓名
float hp; //血量
float armor; //护甲
int moveSpeed; //移动速度
//带一个参数的构造方法
public Hero(String heroname){
name = heroname;
}
//带两个参数的构造方法
public Hero(String heroname,float herohp){
name = heroname;
hp = herohp;
}
public Hero(String heroName,float heroHP,float heroArmor,int heroMoveSpeed){
name = heroName;
hp = heroHP;
armor = heroArmor;
moveSpeed=heroMoveSpeed;
}
public static void main(String[] args) {
Hero garen = new Hero("盖伦");
Hero teemo = new Hero("提莫",383);
Hero db = new Hero("死哥",400,27,360);
}
}
HOW2J公众号,关注后实时获知最新的教程和优惠活动,谢谢。
问答区域
2023-08-21
四个参数的构造器
2 个答案
658721cm 跳转到问题位置 答案时间:2024-04-17 package BackText016;
public class Hero {
private String heroName;
private float heroHP;
private float heroArmor;
private int heroMoveSpeed;
public Hero() {
}
public Hero(String heroName, float heroHP, float heroArmor, int heroMoveSpeed) {
this.heroName = heroName;
this.heroHP = heroHP;
this.heroArmor = heroArmor;
this.heroMoveSpeed = heroMoveSpeed;
}
public String getHeroName() {
return heroName;
}
public void setHeroName(String heroName) {
this.heroName = heroName;
}
public float getHeroHP() {
return heroHP;
}
public void setHeroHP(float heroHP) {
this.heroHP = heroHP;
}
public float getHeroArmor() {
return heroArmor;
}
public void setHeroArmor(float heroArmor) {
this.heroArmor = heroArmor;
}
public int getHeroMoveSpeed() {
return heroMoveSpeed;
}
public void setHeroMoveSpeed(int heroMoveSpeed) {
this.heroMoveSpeed = heroMoveSpeed;
}
}
2672148523 跳转到问题位置 答案时间:2024-02-09 public class Hero {
String heroName;
float heroHp;
float heroArmor;
int heroMoveSpeed;
public Hero(String heroName, float heroHp, float heroArmor, int heroMoveSpeed) {
this.heroName = heroName;
this.heroHp = heroHp;
this.heroArmor = heroArmor;
this.heroMoveSpeed = heroMoveSpeed;
}
public static void main(String[] args) {
Hero h1 = new Hero("盖伦", 100, 150, 50);
System.out.println("您的英雄" + h1.heroName + "血量还有" + h1.heroHp + ",护甲等级" + h1.heroArmor + ",移动速度" + h1.heroMoveSpeed);
}
}
回答已经提交成功,正在审核。 请于 我的回答 处查看回答记录,谢谢
2021-12-17
面向对象学习代码
16 个答案
小非_89 跳转到问题位置 答案时间:2023-08-18 tiang 跳转到问题位置 答案时间:2023-05-25 package object.newbie;
public class Hero {
String name;
float hp;
float armor;
int movespeed;
public Hero(){
}
public Hero(String heroName,float heroHp,float heroArmor,int heroMoveSpeed){
name=heroName;
hp=heroHp;
armor=heroArmor;
movespeed=heroMoveSpeed;
}
}
Aeclar 跳转到问题位置 答案时间:2023-04-23 ...没什么好说的,看代码吧。
kxk 跳转到问题位置 答案时间:2023-04-20 伊亻 跳转到问题位置 答案时间:2023-01-14 lanren9 跳转到问题位置 答案时间:2022-11-11 阿文6 跳转到问题位置 答案时间:2022-10-20 给你买粉包 跳转到问题位置 答案时间:2022-10-18 ljc20020822 跳转到问题位置 答案时间:2022-07-04 妹子屠戮者 跳转到问题位置 答案时间:2022-06-01 public class Hero {
String name;
float hp;
float armor;
int moveSpeed;
public Hero() {
System.out.println("实例化一个对象,必须调用构造方法");
}
///提供油藏构造方法后,如果不提供无参构造方法,默认无惨构造方法失效
public Hero(String name){
this.name = name;
}
public Hero(String heroName,float heroHP,float heroArmor, int heroMoveSpeed){
this.name = heroName;
this.hp = heroHP;
this.armor = heroArmor;
this.moveSpeed = heroMoveSpeed;
}
public static void main(String[] args){
Hero h = new Hero();
}
}
芬达味橘猫 跳转到问题位置 答案时间:2022-04-29 答案
JAVA+ 跳转到问题位置 答案时间:2022-04-10
public Hero(String heroname){
System.out.println("英雄名称是"+heroname);
}
public Hero(String heroname,float herohp){
System.out.println("英雄"+heroname+"拥有的血量是"+herohp);
}
public Hero(String heroName,float heroHP,float heroArmor){
System.out.println("英雄"+heroName+"拥有的血量是"+heroHP + ",护甲值是"+heroArmor);
}
public Hero(String heroName,float heroHP,float heroArmor,int heroMoveSpeed){
System.out.println("英雄"+heroName+"拥有的血量是"+heroHP + ",护甲值是"+heroArmor+",移动速度是"+heroMoveSpeed);
}
public static void main(String[] args) {
Hero f=new Hero("治疗师",350,55,20);
Hero a=new Hero("法师",300,40);
}
}
Keike1 跳转到问题位置 答案时间:2022-03-08 hoolich 跳转到问题位置 答案时间:2022-03-07 /*
为Hero设计4个参数的构造方法
这四个参数分别是
String heroName
float heroHP
float heroArmor
int heroMoveSpeed
*/
public class Hero {
String name; //姓名
float hp; //血量
float armor; //护甲
int moveSpeed; //移动速度
public Hero(){
System.out.println("实例化一个对象的时候,必然调用构造方法");
}
public Hero(String heroName,float heroHP,float heroArmor,int heroMoveSpeed){
name = heroName;
hp = heroHP;
armor = heroArmor;
moveSpeed = heroMoveSpeed;
}
public static void main(String[] args) {
//创建一个对象
// new Hero();
//使用一个引用来指向这个对象
// Hero h = new Hero();
}
}
一个java小菜鸟 跳转到问题位置 答案时间:2022-02-28 public class Hero1 {
/**
* 为Hero1设计4个参数的构造方法
* 这四个参数分别是
* String heroName
* float heroHP
* float heroArmor
* int heroMoveSpeed
*/
String hero1Name;
float hero1Hp;
float heroArmor;
int heroMoveSpeed;
public Hero1(String name) {
hero1Name = name;
}
public Hero1(float hp) {
hero1Hp = hp;
}
public Hero1(float armor, float hp) {
hero1Hp = hp;
heroArmor = armor;
}
public Hero1(int moveSpeed) {
heroMoveSpeed = moveSpeed;
}
public static void main(String[] args) {
Hero1 hero1 = new Hero1("提莫");
Hero1 hero2 = new Hero1(120f);
Hero1 hero3 = new Hero1(500, 20);
Hero1 hero4 = new Hero1(100);
}
}
GGP 跳转到问题位置 答案时间:2022-02-11
回答已经提交成功,正在审核。 请于 我的回答 处查看回答记录,谢谢
2021-10-17
为什么会有相关问题?
2021-08-21
面向对象学习代码
2021-07-08
2021-7-8-AM-8-30
提问太多,页面渲染太慢,为了加快渲染速度,本页最多只显示几条提问。还有 52 条以前的提问,请 点击查看
提问之前请登陆
提问已经提交成功,正在审核。 请于 我的提问 处查看提问记录,谢谢
|