20210318Java方法、类和对象的个人总结*****

编程这件事儿是从外国开始的,很多术语是强行翻译过来的,大家用着字面意思习惯了,也就没有建立完整的翻译,不过有时候用起来比较拗口,还是会用自己的方式表达,最终结果是同一个意思不同人有不同表达,甚至同一个人也有很多种表达,导致讲解的时候,容易让听者云里雾里,一会儿构造器,一会儿构造函数,一会儿构造方法。再者编程语言也多,各种语言之间定义的说法也不同,用法也不同,很多人跨语言类比,比如把函数聊进了Java,越容易让初学者云里雾里。所以个人认为,学习一门编程语言时,弄清楚老师说的每个名词准确的意思很重要。

对象就是类的一个实例,类是对象的模板

1java类中,包含:

1.1构造方法(也叫构造器):

每个类都有构造方法(构造器),其功能主要是创建(也叫实例化)对象和完成对象的初始化。当类实例化一个对象时会自动调用构造方法。
构造方法和其他方法一样也可以重载。
/*
这里穿插复习下方法相关的内容:(可以忽略)
我们定义(也是创建)方法的时候,可以包含参数(就是有参方法),也可以不包含(就是无参方法)。
什么是参数呢:参数就是调用方法是需要先传递(也叫定义、也可以叫声明、也可以叫创建)的东西。调用方法就像我们乘坐长途车。无参方法,就像直达车,你买票上车,就直达目的地;有参方法就是停站车,你买票时,需要告诉对方目的地,这个目的地就是参数,你不对方告诉目的地,对方没法告诉你票价,你也就没法买票上车。这里车票就是形式参数parameter,是可以公司定义乘坐长途车这个方法时定义的,调用“成都-上海长途车”这个方法,就得有车票,而比如理发这个方法,就不需要车票,但我们作为乘客乘车时是光说我有票还不行,我们得说买了多少钱的票,客运公司才准确知道我们在哪下车,比如10块的票对应成都-重庆,20块的票对应成都-武汉,30块的票对应成都-上海,(这里不考虑逃票)你拿20块的票上车,就会准确把你带到武汉,这里20块的票就是实际参数argument。而票价又不一定是一程不变的,比如汽油涨价了,票价也会变,所以票价可以是一个变量variable,也就是方法的参数可以是一个变量。再比如现在要求只能到成都几个固定的客运站乘车,这个车票、客运站,就构成了参数列表
假如客运公司给“成都-上海长途车”这班车(这个方法),定义了一个服务,就是到站会给你发送反馈,这个反馈就是返回值,这个返回值类型可以是短信,也可以是广播,返回值类型在定义方法的时候就定义好的。如果客运公司说别整那些没用的,到站把人放下就行,那这个车就没有返回值,没有返回值也是在定义方法时定义好的。返回值可以是随意的,比如你定义个比大小的方法max(a,b),也可以返回“祝你平安”。
比如另一个客运公司看见这个长途班车赚钱,自己也开通了“成都-上海长途车”这个班车,也是需要车票,但上门接送不需要到客运站乘车,也就是参数列表只有“车票”一个参数了,我么叫做方法重载,当然广义的方法重载包含更多内容。
静态方法与非静态方法:最本质的区别是静态方法和类一起加载,非静态方法通过对象加载。
在不同类class中进行跨类调用(也叫引用)时:
静态方法:通过【类名.方法名();】 调用即可。(“.”可以理解为的,类的方法)。同一个类中直接用【方法名();】也可。
非静态方法:需要把类实例化为对象才能用,通过【类名 对象名=new 类名();对象名.方法名();】调用;(“.”可以理解为的,对象的方法。这个实例化和调用翻译成人话就是:构造/创建一个某某类的某个对象,并用new关键字调用类的构造方法为该对象传递初始值;调用这个对象的某某方法)。同一个方法中,对象名、变量名不能相同,因此,是需要实例化一次,以后用“对象名.方法名()”即可,不用每次写“类名.对象名.方法名()”。
非静态方法的好处是,不占内存,可以撤销。
引用传递、值传递:这里的“传递”,其实就是“赋值”的意思。
*/

系统默认(或者说系统赠送)的构造方法是无参构造,开发者可以不用自己去显示(就是以敲出代码的方式)定义,但如果开发者想定义有参构造方法,就必须先定义无参构造。开发者也可以显示定义无参构造,给方法中属性字段传递(赋)初始值。
用Alt+Insert来创建(也是生成)构造器。
怎么区分构造方法和其他方法呢?构造方法名称和类名一样,而且必须没有返回值类型,也不能写void。

1.2属性(也是字段Field,或叫成员变量)

定义方式:修饰符(也是关键字) 字段类型 字段名=字段值;
比如:
String name;
int age;
可以赋(也叫传递)初始值,也可以不传递,不赋值则系统会给它个默认值。
全局变量用【对象.变量名】调用。

1.3静态方法

1.4非静态方法

1.5内部类

2对象

2.1对象的创建/实例化

用new 关键字调用类的构造器,来创建对象

2.2对象的调用

属性的调用:对象.属性字段
方法的调用:对象.方法()

2.3对象包含

2.3.1属性/字段/成员变量

2.3.1.1公有属性
  1. 创建
    public String name;//public可以省略
  2. 调用
    对象.属性字段
2.3.1.2私有属性/封装

通过内部封装可以保护数据安全,可以隐藏数据实现细节,可以统一数据接口,可以增加系统可维护性。

  1. 创建
    private String name;
    创建给私有属性赋值和取值的公共方法(也叫创建给私有属性导入值和取出私有属性值的公共方法)
    Alt+Insert:
    public int getAge(){return age}
    public void setAge(int age){this.age=age}
  2. 跨类调用
    对象名.setAge(3);
    对象名.getAge();
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
校园悬赏任务平台对字典管理、论坛管理、任务资讯任务资讯公告管理、接取用户管理、任务管理、任务咨询管理、任务收藏管理、任务评价管理、任务订单管理、发布用户管理、管理员管理等进行集中化处理。经过前面自己查阅的网络知识,加上自己在学校课堂上学习的知识,决定开发系统选择小程序模式这种高效率的模式完成系统功能开发。这种模式让操作员基于浏览器的方式进行网站访问,采用的主流的Java语言这种面向对象的语言进行校园悬赏任务平台程序的开发,在数据库的选择上面,选择功能强大的Mysql数据库进行数据的存放操作。校园悬赏任务平台的开发让用户查看任务信息变得容易,让管理员高效管理任务信息。 校园悬赏任务平台具有管理员角色,用户角色,这几个操作权限。 校园悬赏任务平台针对管理员设置的功能有:添加并管理各种型信息,管理用户账户信息,管理任务信息,管理任务资讯公告信息等内容。 校园悬赏任务平台针对用户设置的功能有:查看并修改个人信息,查看任务信息,查看任务资讯公告信息等内容。 系统登录功能是程序必不可少的功能,在登录页面必填的数据有两项,一项就是账号,另一项数据就是密码,当管理员正确填写并提交这二者数据之后,管理员就可以进入系统后台功能操作区。项目管理页面提供的功能操作有:查看任务,删除任务操作,新增任务操作,修改任务操作。任务资讯公告信息管理页面提供的功能操作有:新增任务资讯公告,修改任务资讯公告,删除任务资讯公告操作。任务资讯公告型管理页面显示所有任务资讯公告型,在此页面既可以让管理员添加新的任务资讯公告信息型,也能对已有的任务资讯公告型信息执行编辑更新,失效的任务资讯公告型信息也能让管理员快速删除。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值