Java面向对象编程 -2
成员属性封装
在类之中的组成就是属性和方法,一般而言方法都是对外提供服务的,所以是不会进行封装处理的,而对于属性需要较高的安全性,所以往往需要对其进行保护 这个时候就需要采用封装性对属性进行保护。
在默认情况下,对于类中的属性是可以通过其他类利用对象进行调用的。
解决办法:可以利用private关键字对属性进行封装处理。
而属性一旦封装之后外部将不能够直接访问,即对外部不可见,但是对类的内部是可见;
那么要想让外部的程序可以访问封装的属性,则在Java开发标准中提供了如下要求:
- setter getter设置或取得属性可以使用setXxx()、getXxx()方法;以private String name;为例
- 设置属性方法: public void setName(String name);
- 获取属性方法: public String getName();
 
class Person{
	private int age;
	private String name;
	public void setAge(int a) {
		age = a;
	}
	public int getAge() {
		return age;
	}
	public void setName(String n) {
		name = n;
	}
	public String getName() {
		return name;
	}
	public  void intorduce() {
		System.out.println("age= "+age+" name= "+name);
	}
}
public class xxx {
	public static void main(String[] args) {
		Person per1 = new Person();
		per1.setAge(16);
		per1.setName("sakura");
		per1.intorduce();
	}
}
>>>age= 16 name= sakura
在以后进行任何类定义得时候一定要记住,类中的所有属性都必须使用private封装(标准做法 90%),并且提供有setter和getter方法。
封装性是java面向对象的第一大主要特征 ,封装性不仅仅是一个属性封装这么简单,它跟访问权限有关。
Java面向对象编程 -2的更多相关文章
- Java面向对象编程基础
		一.Java面向对象编程基础 1.什么是对象?Object 什么都是对象! 只要是客观存在的具体事物,都是对象(汽车.小强.事件.任务.按钮.字体) 2.为什么需要面向对象? 面向对象能够像分析现实生 ... 
- java 面向对象编程。。。。
		经过一周的学习(java),总结了许多,对java的理解,java的类型,运用,安装,基础语法,变量,常量,表达式,语句 java从C语言中继承了大量语言特性.java面向对象编程的基本特征,包括继承 ... 
- 《Java面向对象编程》
		<Java面向对象编程> 第11章 对象的生命周期 11.1 创建对象的方式 用new语句创建对象 运用反射手段,调用java.lang.Class 或者 java.lang.Const ... 
- JAVA面向对象编程课程设计——网络版单机斗地主
		一.团队介绍 成员姓名 任务分配 成员课程设计博客链接 兰泽祥(组长) 数据库,斗地主规则的实现,人机自动出牌的算法,实体类的设计 JAVA面向对象编程课程设计--web版斗地主 吴修恩 JSP界面的 ... 
- JAVA面向对象编程课程设计——web版斗地主
		一.团队课程设计博客链接 JAVA面向对象编程课程设计--网络版单机斗地主 二.个人负责模块或任务说明 实体类的设计 斗地主规则的实现 人机自动出牌的算法 实现数据库的DAO模式 三.自己的代码提交记 ... 
- java面向对象编程知识点总结
		一:今天完成 上午详细了解了java面向对象编程的一些细节,记录如下. 1)类 是一种引用类型,包含一个签名和一个主体,主体是放在花括号里面的成员,成员包括字段和方法,还有构造方法.初始化程序和嵌套类 ... 
- Java面向对象编程(一)
		由于常常将Java和C++面向对象编程的原则搞乱,所以这次把相关要点分别总结一下,本文主要总结Java面向对象编程. 面向对象编程的三大特性是:继承性(inheritance), 多态性(polymo ... 
- JAVA学习(五):Java面向对象编程基础
		Java面向对象编程基础 面向对象(Object oriented programming,OOP)技术是一种强有力的软件开发方法,它採用数据抽象与信息隐藏技术,来使软件开发简单化,以达到代码重用的目 ... 
- (一)如何理解java面向对象编程
		哲学中,事物总是螺旋式上升,波浪式前进.因而编程也逐渐向人类更容易理解的方向前进,多年来人们苦苦追求的编程境界 : 高扩展性(extensibility),高复用性(reuseable).java语言 ... 
- java面向对象编程--第九章 多态和抽象
		9.1多态 在生物学中,是指一个生物或物种可以有多种不同的形式或阶段: 在OOP中,多态是指一个对象有多种形式的能力. 多态可以说是面向对象编程的精髓所在.java中之所以引入多态的概念,原因之一是它 ... 
随机推荐
- numpy rand函数的应用
			以后使用rand(), randint()等函数. 随机浮点类型数值(均匀分布) numpy.random.rand() 产生[0,1)内的浮点型随机数 numpy.random.rand(value ... 
- 通过scrapy,从模拟登录开始爬取知乎的问答数据
			这篇文章将讲解如何爬取知乎上面的问答数据. 首先,我们需要知道,想要爬取知乎上面的数据,第一步肯定是登录,所以我们先介绍一下模拟登录: 先说一下我的思路: 1.首先我们需要控制登录的入口,重写star ... 
- MongoDB高可用集群配置方案
			原文链接:https://www.jianshu.com/p/e7e70ca7c7e5 高可用性即HA(High Availability)指的是通过尽量缩短因日常维护操作(计划)和突发的系统崩溃(非 ... 
- arcgis计算X坐标值、Y坐标值
			arcgis计算X坐标值.Y坐标值 要计算的字段上点击右键,选择计算几何,弹出计算几何对话框.可以设置属性.坐标系.单位等. 
- python正则--re模块常用方法
			前面几篇关于正则匹配的文章我用的方法都只有一个re.search 但其实正则re模块提供很多非常好用的方法,我们先来看看re模块都有那些属性方法呢 前面的一堆带_或者大写的就不关注了,主要关注最后面的 ... 
- 使用SqlDataReader的查询操作
			原创weixin_42430576 发布于2019-01-31 18:49:41 阅读数 762 收藏 展开 using System; using System.Collections.Gener ... 
- Java-POJ1002-487-3279(含c++代码)
			Java 的读入还不熟练,解决不了空行的问题,还是只能用c++ A掉,唉~ 之后要把这个坑补掉 解决了,开心(*^▽^*)以下是AC的Java代码 以下是C++代码 #include<cstdi ... 
- Java - Java 命令行简介: 选项, 属性, 参数
			概述 简单介绍一下 java 命令行相关的参数及属性 1. java 命令行 基本 命令 > java <mainClass> 描述 执行 Java 类 需要准备好编译完成的 mai ... 
- selenium配合phantomjs实现爬虫功能,并把抓取的数据写入excel
			# -*- coding: UTF-8 -*- ''' Created on 2016年5月13日 @author: csxie ''' import datetime from Base impor ... 
- 入门chrome插件开发教程和经验总结,一篇就搞掂!
			版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/weixin_44244857/articl ... 
