【java】学习路线5-public和private、构造方法、this关键字、封装对象、static关键字、main方法结构解析
//一个教务管理系统
//知识点清单
/*
public & private 的区别
一个是公开的,一个是私有的,作用域不一样,访问的权限不一样咯
如果是用private修饰,则调用者只可以是在当前的作用域,一个类里边的。
private的其中一个作用
修饰一个类中的变量,为了规则输入,可额外设计一个public公开的方法改变数值,附加校验的功能
*/
/*
构造方法(构造器)
例如这条语句 : Student std = new Student();
Student();虽然你没有定义这个方法,但是系统帮你提供了,你也可以自己弄
你还可以构造多个构造方法,区别在于参数不同
*/
/*
this关键字 在类中使用
相当于把class根层作为出发点去寻找变量
作用1
比如在类中有一个a的变量,类中的方法中也有一个a的变量,在该方法中使用方法外面的变量则this.a即可。
作用2
代表当前的对象
*/
/*
对象属性私有化
将对象使用private修饰,如果需要访问,只需构造一个方法return即可.
public String getName(){
return name;
}
这样相当于“只读”。相当于《封装》。
*/
/*
static关键字
修饰成员变量,成员方法。
好处是:节约内存,一般是高频使用的不需要修改的常量,类似于const
栈 堆 方法区(含有静态区)
静态变量:存储在静态区,只要是用到了这个类,则不同对象都是调用同一个内存区域。
即使你没有创建这个类的对象,你也可以直接访问到这个类的静态变量和静态方法
静态方法:因为也是存储在静态区里的,只有一份,所以静态方法是不能访问非静态变量的
main就是静态方法
*/
/*
main的静态方法通过java命令传递参数
DOS:java Learn04 第一个参数 第二个参数 ...
则存储在args中
*/
public class Learn04 {
public static void main(String[] args){
Student std = new Student();
//Student std = new Student("张杰",19,"929252",'男');
//std.show();
for (String ss : args){
System.out.println(ss);
}
}
}
class Student{
public static String static_country;
String name;
int age;
String id;
char gender;
public Student(){
System.out.println("没有参数的构造方法被调用了!");
}
public Student(String n,int a ,String i,char g){
name = n;
age = a ;
id = i;
gender = g;
System.out.println("有参数的构造方法被调用了!");
}
public void show(){
System.out.println(name + "\n" + age + "\n" + id + "\n" + gender + "\n" );
}
}
【java】学习路线5-public和private、构造方法、this关键字、封装对象、static关键字、main方法结构解析的更多相关文章
- Java学习笔记(4)----Public,Protected,Package,Private修饰符可见性
Java修饰符类型(public,protected,private,friendly) public的类.类属变量及方法,包内及包外的任何类均可以访问:protected的类.类属变量及方法,包内的 ...
- 最新java学习路线:含阶段性java视频教程完整版
最新java学习路线:带阶段性java视频教程版本 第一阶段:Java基础 学习目标: 掌握基本语法.面向对象.常用类.正则.集合.Io流.多线程.Nio.网络编程.JDK新特性.函数式编程 知识点细 ...
- 【Todo】Java学习路线(方向指导)
在网上搜了下Java学习路线(关键词:学习,因为众所周知,实践出牛人,在平时工作不怎么深入的情况下,才强调学习的方向的重要性 ^_^) 发现下面知乎这个回答写的真好.mark如下: https://w ...
- 分享篇——我的Java学习路线
虽然之前我是开发出身,但是我学习的语言是Objective-c,这个语言使用起来范围比较窄,对于自动化学习来说也是无用武之地,所以我自己学习了Java,对于一个有开发经验的人来说学习一门新语言相对来说 ...
- JAVA修饰符类型(public,protected,private,friendly)
转自:http://www.cnblogs.com/webapplee/p/3771708.html JAVA修饰符类型(public,protected,private,friendly) publ ...
- java学习路线(好资源大家分享)
对于入门java将近两年的时间,曾经迷惘过,一直想知道java的具体学习路线,看过了许许多多的java经验分享的帖子,评论,以及其他各种培训机构所谓的学习路线,发现没有一个符合我个人需求的学习路线,根 ...
- JAVA类型修饰符(public,protected,private,friendly)
JAVA类型修饰符(public,protected,private,friendly) public的类.类属变量及方法.包内及包外的不论什么类均能够訪问:protected的类.类属变量及方法,包 ...
- 一份最中肯的Java学习路线+资源分享(拒绝傻逼式分享)
这是一篇针对Java初学者,或者说在Java学习路线上出了一些问题(不知道该学什么.不知道整体的学习路线是什么样的) 第一步:Java基础(一个月左右) 推荐视频: 下面的是黑马内部视频,我比较推荐的 ...
- 【强烈推荐】可能是最适合你的 Java 学习路线和方法
如遇链接无法打开,建议使用 https://github.com/Snailclimb/JavaGuide/blob/master/docs/questions/java-learning-path- ...
随机推荐
- 关键路径 p3 清华复试上机题
关键路径 p3 清华复试上机题 题目描述 小H为了完成一篇论文,一共要完成n个实验.其中第i个实验需要a[i]的时问去完成.小H可以同时进行若干实验,但存在一些实验,只有当它的若干前置实验完成时,才能 ...
- VTK 在WINDOWS上的安装使用
参考:http://www.vtk.org/Wiki/VTK/Building/Windows#Step_5_-_Open_the_Visual_Studio_project
- 开源流程引擎Camunda BPM如何扩展数据库表
前言 在使用开源流程引擎(如:JBPM.Activiti.Flowable.Camunda等)的时候,经常会遇到这样的需求,我们需要按照业务需求增加一张数据库的表,而且这张表是跟工作流引擎有交互的(注 ...
- 网心云在PVE下三种磁盘IO模式(No cache,Write through,Write back)选择与优化指南
---------------------------------------------------------------------------------------------------- ...
- 『忘了再学』Shell流程控制 — 35、多分支case条件语句
目录 1.case条件语句介绍 2.case语句需要注意的内容 3.练习 示例1 示例2 1.case条件语句介绍 case语句和if-elif-else语句一样都是多分支条件语句,不过和if多分支条 ...
- canvas简易画布
今天学习了canvas,利用它做了一个简易版的画板,校验自己所学的知识,分享出来以供大家学习指教.先上效果图. 主要是使用了canvas的stroke和clearReact来实现画板的绘画和橡皮擦功能 ...
- SAP 实例 9 Text output
REPORT demo_show_text. CLASS demo DEFINITION. PUBLIC SECTION. CLASS-METHODS main. ENDCLASS. CLASS de ...
- SAP BDC 用户输入日期转系统日期格式: CONVERT_DATE_TO_EXTERNAL
BDC中,日期输入格式不正确:可调用FM CONVERT_DATE_TO_EXTERNAL DATA:l_bdcfield LIKE bdcdata-fval."BDC field val ...
- RPA SAP财务内部对账机器人
[简介] 本机器人用于使用SAP软件的集团公司间往来对账前台登录SAP账户和密码,需退出PC微信,输入法切换为英文半角状态. [详细流程] 1.清空Excel-VBA管理工具原始数据 2.输入对账时间 ...
- 梯度下降算法实现原理(Gradient Descent)
概述 梯度下降法(Gradient Descent)是一个算法,但不是像多元线性回归那样是一个具体做回归任务的算法,而是一个非常通用的优化算法来帮助一些机器学习算法求解出最优解的,所谓的通用就是很 ...