java类和对象问题

2024年11月23日 09:08
有5个网友回答
网友(1):

1、main()所在类不是实现类,而是运行程序的入口。实现类主要是实现接口的方法,implements 是类实现接口的关键字。
2、main()中实例化的对象,你要给这个对象传值赋值、执行操作等等,都任你意愿。
3、所谓传值,有getter()和setter()方法来做。不一定什么都要依靠main()来做,任何方法都可以给别的方法传值,main()其实你把他当作一个普通方法即可,只是它是程序入口,单独运行类时,必须要的。

不知道你有没有学习过猫类、狗类的java类示例。getter()和setter()就是为了给那个对象中的设置或获取属性。
比如一个猫类
public class Cat()
{
private String name;//猫的名字
/** 为猫设置名字 */
public void setName(String name){
this.name=name;
}
/** 获取猫的名字 */
public String getName(){
return name;
}
/** 让它执行什么事 */
public void doSomeThing(){
System.out.println(name+",come on!");
}

}
/** 测试类 这个类,不是叫实现类,而是程序的入口,没有main()就没有入口*/
public class Test()
{
public static void main(String[] orgs){
Cat cat=new Cat();
cat.setName('小猫猫');
cat.doSomeThing();
}
}

唉,没有被采纳,白手打这么多。楼主基础概念不清楚啊~

网友(2):

分四个方面回答:

  1. main方法: main方法不是什么实现类,而只是一个程序的入库。比如一个人要进入一个屋子,门就是入口。 main方法就是一个程序运行时的入口。

  2. 类和对象: 类是一类东西的描述。比如说学生类 Student。对象是这类东西的具体实现。比如说张三是个学生,那张三就是Student这个类的对象。java写法 Student 张三 = new Student();

  3. 传值: 传值跟main没关系,跟具体的对象有关系。比如说学生类有年龄(age),性别(sex),姓名(name)三个属性。那么传值的方式就是 Student s = new Student(); s.setAge(23); s.setSex("男"); s.setName("张三");

  4. get,set方法: 对一个对象进行赋值有两种方法。比如说上面例子要对学生年龄进行赋值 a方法:s.age =23 ;(age为public的属性)b方法: s.setAge(23); 一般java推荐b方法。具体原因就是封装。因为有时候一个对象的属性不希望外部直接调用或者操作(private属性),比如说要给一个账户类赋密码值,程序要经过加密处理后才把值赋给密码这个属性而不是直接用 account.password = “123”; 这种方式。

     

网友(3):

您好,提问者:    

    Java编程中,main是赋予特殊含义的一个可执行的方法,是一个主程序的入口。

    关于set、get来讲,我们都知道一般是公共(public)的,即对外提供而已,例如:

public class Person{
    private String name; //私有
    private Person(String name){ //私有的构造方法
       this.name = name;
    }
    public Person(){} //空的,让别人new实例用
    public String getName(){
        //这句话的意思是,私有的有参构造方法只能在本类访问
        //如果name不等于null就返回一个默认的姓名,否则返回已有姓名
        return this.name == null ? new Person("defualt").getName():name;
    }
}

网友(4):

首先main方法只是java程序的入口,有可能在main方法中调用其他的实现某些功能的类,那么调用的那个才是实现类.当你实例化对象后,所调用的方法都只能对该对象产生作用.比如 String str = "abc".
str.charAt() 得到的是str的某个字符,而不是String 这个类的,这一点你要搞明白. 再者,我们在定义类的时候,一般的成员变量都是私有的用private,这样子,你在实例化对象以后直接用User.username是没有用的.所以我们要用一个public 的 gettersetter方法 用来给变量赋值和取值.

网友(5):

main方法以后机会用不到。所以不要去纠结