java类和对象问题

main方法所在类是否就是实现类?在main方法中实例化相关类的对象后,就能通过对象对相关类的方法进行传值以及对相关类的相同变量进行值的覆盖?传值总是从main这个实现类... main方法所在类是否就是实现类?在main方法中实例化相关类的对象后,就能通过对象对相关类的方法进行传值以及对相关类的相同变量进行值的覆盖?
传值总是从main这个实现类传给对象所代表的类中的方法和变量是么?
如果实例化后就能对相关类的方法和变量进行传值,那get,set访问器的意义又在哪里?
请详细回答,若回答满意会追加分值,谢谢
展开
 我来答
jonquillsl
2014-08-07 · TA获得超过439个赞
知道小有建树答主
回答量:157
采纳率:25%
帮助的人:37.2万
展开全部
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();
}
}

唉,没有被采纳,白手打这么多。楼主基础概念不清楚啊~
百度网友fa6f888
2014-08-07 · TA获得超过1056个赞
知道小有建树答主
回答量:519
采纳率:0%
帮助的人:516万
展开全部

分四个方面回答:

  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”; 这种方式。

     

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小童鞋_成er
2014-08-07 · 知道合伙人数码行家
小童鞋_成er
知道合伙人数码行家
采纳数:4650 获赞数:22879
主要从事J2EE工作,热爱Java,用心讨论技术,共同进步。

向TA提问 私信TA
展开全部

您好,提问者:    

    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;
    }
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友f0240c618
2014-08-07 · TA获得超过220个赞
知道小有建树答主
回答量:159
采纳率:100%
帮助的人:71.8万
展开全部
首先main方法只是java程序的入口,有可能在main方法中调用其他的实现某些功能的类,那么调用的那个才是实现类.当你实例化对象后,所调用的方法都只能对该对象产生作用.比如 String str = "abc".
str.charAt() 得到的是str的某个字符,而不是String 这个类的,这一点你要搞明白. 再者,我们在定义类的时候,一般的成员变量都是私有的用private,这样子,你在实例化对象以后直接用User.username是没有用的.所以我们要用一个public 的 gettersetter方法 用来给变量赋值和取值.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-08-07
展开全部
main方法以后机会用不到。所以不要去纠结
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(7)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式