Java对象和封装

Java 对象和类

对象:对象是类的一个实例,有状态和行为。
类:类是一个模板,它描述一类对象的行为和状态。

构造方法

每个类都有构造方法。如果没有显式地为类定义构造方法,Java编译器将会为该类提供一个默认构造方法。如果自己写了构造方法系统默认的不在起作用。构造方法的名称必须与类同名,一个类可以有多个构造方法。

package dog;
public class Dogs {
 String name;
 int health;
 int love;
 String strain;
 public Dogs() {
  //系统默认构造方法。
 }
 public Dogs(int health,int love,String name,String strain) {
  //参数数据类型或参数个数不同
 }
 public Dogs(String name,int health,int love,String strain) {
  this.name=name;
  this.health=health;
  this.love=love;
  this.strain=strain;
 }
}
package dog;
import java.util.Scanner;
public class TestDogs {
public static void main(String[] args) {
  // TODO Auto-generated method stub
  Scanner input = new Scanner(System.in);
  System.out.print("请输入狗狗名字:");
  String name=input.next();
  Dogs dogs=new Dogs(name,100,0,"潘多拉");
  Dogs dogs1=new Dogs();
 }
 }

static修饰与非static修饰的区别

static、非private修饰非static、private修饰
属性类属性、类变量实例属性、实例变量
方法类方法实例方法
调用方式类名.属性 类名.方法() 对象.属性 对象.方法()对象.属性 对象.方法()
归属单个对象
package dog;
public class Staticdomc {
 // static可以修饰属性、方法、代码块
 // 静态成员由类名直接调用,也可以由对象调用。静态变量是类级别的,只开辟一个空间。
 // 当类被首次调用时,静态成员即被初始化
 // 静态方法只能调用静态属性
 // 非静态成员可以直接就调用静态成员
 public static int id;
 public String name;
 public static void show() {
  System.out.println("这是静态的show方法" + id);
 }
 static {
  System.out.println("这是static静态块...");
 }
  public void Staticdomc() {
  System.out.println("这是无参构造方法...");
 }
  public static void main(String[] args) {
  // TODO Auto-generated method stub
  Staticdomc.id = 10;
  Staticdomc sd = new Staticdomc();
  sd.id = 20;
  Staticdomc sd2 = new Staticdomc();
  sd2.id = 30;
  System.out.println(Staticdomc.id);
  System.out.println(sd.id);
  System.out.println(sd2.id);
  Staticdomc.show();
 }
 }

结果是:
这是static静态块…
30
30
30
这是静态的show方法30
所以说
static方法就是没有this的方法。在static方法内部不能调用非静态方法,反过来是可以的。而且可以在没有创建任何对象的前提下,仅仅通过类本身来调用static方法。这实际上正是static方法的主要用途。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

~plus~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值