简述抽象和封装,对你学习Java有一些作用
作为一个Java 初学者,对Java的理解可能有些片面,甚至有些错误的理解,对于观看此处的您,希望您选择性观看!!!
天知道我为什么选择学习编程,我不爱编程,但是我既然学习了,还是会努力学习的,在此分享一些学习经验。
访问修饰符:
1.常用访问修饰符:
public 共有的
private 私有的
protect 保护
public 所有人能用,私有的自己能用,protect一个包里。
2.自动修正快捷键 ctrl+1(注:搜索MyEclipse快捷键大全,可以找到所有快捷键的)
真正的用法还要你自己去环境里体会。
3.面向对象,例如:
先建立一个学生1类:
package cn.curry.day01; public class Student1 {
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) { if(age<=16){
this.age = age;
}
else {
this.age=age;
System.out.println("年龄不能大于16岁!");
} }
public void studentInfo()
{
if (this.age>16) {
return;
}
System.out.println("学生姓名为"+this.getName()+",年龄为"+this.getAge());
} }
在建立一个学生2类
package cn.curry.day01; public class Student2 {
private String name;
private int age;
private String sex;
private String work;
public Student2(String sex,String work)
{
this.setSex(sex);
this.setWork(work);
}
public Student2(String name,int age,String sex,String work)
{ this.setName(name);
this.setAge(age);
this.setSex(sex);
this.setWork(work);
} public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String getWork() {
return work;
}
public void setWork(String work) {
this.work = work;
}
public void myself() {
System.out.println("我的名字是"+this.getName()+",年龄是"+this.getAge()+",性别是"+this.getSex() +",专业是"+this.getWork());
} }
这两类实际上都只是展示学生信息的,但是有的方式是不一样的,类是抽象的,一个类可以有n个对象,一个对象只能来自于一个类。
4.一次性生成所有字段的方法
光标停留在最后的字段后,然后alt+shift+s然后加r再alt+a,再alt+s
5.快速创建类的方法ctrl+n
格式化代码块ctrl+shift+f
6.构造方法
方法名与类名相同,没有返回值,连void都没有!
7.方法重载:在同一个类中,方法名相同,参数列表不同,与返回值和访问修饰符无关!、
8.static关键字
修饰类成员,所有类共享一个内容。
静态代码块
package cn.curry.day01; public class Dog {
private String name;
private String age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
public static Cat[] cats;
//静态代码块
static{
cats=new Cat[2];
System.out.println();
cats[0] =new Cat();
cats[0].setName("大黄");
cats[1]=new Cat();
cats[1].setName("小黄");
} }
9.this的用法
到此基本的东西都在了,日后扩展的东西请关注下篇博客!
简述抽象和封装,对你学习Java有一些作用的更多相关文章
- PHP面向对象三大特点学习(充分理解抽象、封装、继承、多态)
PHP面向对象三大特点学习 学习目标:充分理解抽象.封装.继承.多态 面象对向的三大特点:封装性.继承性.多态性 首先简单理解一下抽象:我们在前面定义一个类的时候,实际上就是把一类事物共有的属性和 ...
- java面向对象编程(五)--四大特征之抽象、封装
1.抽象 我们在前面去定义一个类时候,实际上就是把一类事物的共有的属性和行为提取出来,形成一个物理模型(模版).这种研究问题的方法称为抽象. 2.封装 封装就是把抽象出来的数据和对数据的操作封装在一起 ...
- 如何才能够系统地学习Java并发技术?
微信公众号[Java技术江湖]一位阿里Java工程师的技术小站 Java并发编程一直是Java程序员必须懂但又是很难懂的技术内容. 这里不仅仅是指使用简单的多线程编程,或者使用juc的某个类.当然这些 ...
- [Java初探08]__简单学习Java类和对象
前言 在前面的学习中,我们对面向对象的编程思想有了一个基本的了解,并且简单的了解了类和对象的定义.那么类和对象在Java语言中是如何表现的,这次,就从实际出发,学习一下一下类和对象在Java语言中的使 ...
- 通过WebGoat学习java反序列化漏洞
首发于freebuff. WebGoat-Insecure Deserialization Insecure Deserialization 01 概念 本课程描述了什么是序列化,以及如何操纵它来执行 ...
- 学习Java Web开发
学习DreamWaveMX中文版的网页设计技术 HTML网页设计,这是最基本的.学习XML的一些基本知识.初步掌握一些JSCRIPT的应用. 学习JAVA语言. 这应该分成2次来进行: 第1次找一本国 ...
- 新手如何学习java(java学习建议路线图)
怎么学习Java,这是很多新手经常会问我的问题,现在我简单描述下一个Java初学者到就业要学到的一些东西: 首先要明白Java体系设计到得三个方面:J2SE,J2EE,J2ME(KJAVA). ...
- 假如时光倒流,我会这样学习Java
回头看看, 我进入Java 领域已经快15个年头了, 虽然学的也一般, 但是分享下我的心得,估计也能帮大家少走点弯路. [入门] 我在2001年之前是C/C++阵营, 有C和面向对象的基础, 后来转到 ...
- 假如时光倒流,我会这么学习Java
回头看看, 我进入Java 领域已经快15个年头了, 虽然学的也一般, 但是分享下我的心得,估计也能帮大家少走点弯路. [入门] 我在2001年之前是C/C++阵营, 有C和面向对象的基础, 后来转到 ...
随机推荐
- 搭建spring mvc项目
在之前搭建maven项目这篇的基础上继续集成,引入spring mvc支持 一.添加jar包引用 修改pom.xml文件,加入:(其他关联的jar包maven会自动引用) <!-- 项目属性 - ...
- pthread_cond_signal惊群现象
1.如下代码所示: #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include < ...
- POJ1091跳蚤(容斥 + 唯一分解 + 快速幂)
题意:规定每次跳的单位 a1, a2, a3 …… , an, M,次数可以为b1, b2, b3 …… bn, bn + 1, 正好表示往左,负号表示往右, 求能否调到左边一位,即 a1* b1 ...
- 用 Python、 RabbitMQ 和 Nameko 实现微服务
用 Python. RabbitMQ 和 Nameko 实现微服务 原创 07-17 17:57 首页 Linux中国 "微服务是一股新浪潮" - 现如今,将项目拆分成多个独立的. ...
- bootstrap 水平表单
<form class="form-horizontal" role="form"> <div class="form-group& ...
- 创建一个点状注记(MarkerElement)
1.根据XY创建一个点 /// <summary> /// 根据x y创建新点 /// </summary> /// <param name="dX" ...
- 高版本api在低版本中的兼容
直接上例子,看如何避免crash. eg:根据给出路径,获取此路径所在分区的总空间大小. 文档说明:获取文件系统用量情况,在API level 9及其以上的系统,可直接调用File对象的相关方法,以下 ...
- Windows远程数据同步工具cwRsync
1. cwRsync简介cwRsync是Rsync在Windows上的实现版本,Rsync通过使用特定算法的文件传输技术,可以在网络上传输只修改了的文件.cwRsync主要用于Windows上的远程文 ...
- B:Wordpress不同分类调用不同的模板
这里指的是默认文章类型的模板(single.php,category.php) 应用场景: 默认文章默认有2个大类(新闻资讯.游戏资料) 新闻资讯下的所有子分类调用"新闻资讯列表模板,新闻内 ...
- SQL SERVER几种数据迁移/导出导入的实践
SQLServer提供了多种数据导出导入的工具和方法,在此,分享我实践的经验(只涉及数据库与Excel.数据库与文本文件.数据库与数据库之间的导出导入). (一)数据库与Excel 方法1: 使用数据 ...