Java面向对象之静态属性静态方法、访问权限、getter与setter
一、静态
1、static静态的特点
(1)数据共享
(2)属于类的.并不属于对象
(3)优先于对象产生的
2、优于对象产生(构造器解释)
在程序执行时,是先创建静态构造器,再创建通用构造器。
public class Test03{{System.out.println("---我是通用构造器---");}static{System.out.println("---我是静态构造器---");}//创建构造方法public Test03(){System.out.println("------构造方法------");}//定义主方法public static void main(String[] args){new Test03(); //调用构造方法}
}
3、静态属性或方法使用类名去访问(静态方法也可直接调用)
public class Test03{static char level = 'D'; //定义静态属性{System.out.println("---我是通用构造器---");}//静态方法会默认执行,不创建对象也会执行static{System.out.println("---我是静态构造器---");}//创建构造方法public Test03(){System.out.println("------构造方法------");}public static void SStatic(){System.out.print("She is " + size + ' '); //使用静态属性可以不用thisSystem.out.println("------我是静态方法------");}//定义主方法public static void main(String[] args){Test03.SStatic(); //使用类名访问静态方法SStatic(); //直接访问静态方法}
}
二、访问权限
1、权限类别
public:公共的,所有成员都能访问
default:默认的,也称包访问权限,在自己的包内才能访问,其他包内不能访问
private:私有的,在其他类中不能访问(包中可以有多个类)
2、练习
public class Test03{public String a = "public"; //公有变量String b = "default"; //默认变量private String c = "private"; //私有变量public static void main(String[] args){Test03 Te = new Test03(); //创建对象//主方法中访问三种类型的变量System.out.println(Te.a);System.out.println(Te.b); System.out.println(Te.c); }
}
在其他包(文件夹)中则无法访问到变量b,在其他类中无法访问到变量c。
我们平时用的最多的就是public和private。
三、getter与setter
1、getter、setter原型
- 主方法类的内容:
public class Test03 {public static void main(String[] args){Test03_Person P = new Test03_Person(); //创建对象人//年龄的语法没有问题。但是,逻辑上不对,年龄不可能是负数!// P.name = ”草帽路飞"; //给对象属性赋值// P.age = -1;//查看这个人的名字和年龄P.setName("草帽路飞"); //给私有成员属性赋值P.setAge(-1); //给私有成员属性赋值System.out.println(P.getName()); //获取私有成员属性System.out.println(P.getAge()); P.act();}
}
- 对象人类的内容
public class Test03_Person{//成员安量是私有的private String name;private int age;//setter原型public void setName(String name){this.name = name;}//保证我们的成员变量是值是规范的public void setAge(int age){if (age<0){this.age = 0;}else{this.age = age;}}//getter原型public String getName(){return this.name;}public int getAge(){return this.age;}//定义人的行为方法public void act(){System.out.println("行为:" + this.age + "岁大的" + this.name + "正在散步~");}}
- 结果
2、getter与setter的调出方法
在写好属性之后,空白处右击,Generate,选Getter and Setter,就会自动生成以上getter与setter的原型框架,只需要稍作修改就可以直接使用了。
Java面向对象之静态属性静态方法、访问权限、getter与setter相关推荐
- python 类静态属性_python面向对象之静态属性/静态方法/类方法/组合
继续学习,不要松懈 #!/usr/bin/env python # coding:utf-8 class Campus: def __init__(self,name,addr,type): self ...
- python的实例属性和静态属性_Python面向对象之静态属性、类方法与静态方法分析...
本文实例讲述了Python面向对象之静态属性.类方法与静态方法.分享给大家供大家参考,具体如下: 1. 静态属性:在函数前加@property,将函数逻辑"封装"成数据属性,外部直 ...
- java 重写方法 访问权限_为何Java中子类重写方法的访问权限不能低于父类中权限(内含里氏替换原则)...
为何Java中子类重写方法的访问权限不能低于父类中权限 因为 向上转型及Java程序设计维护的原因 例: 假设一个父类A 拥有的方法public void setXXX(){}可以被其他任意对象调用这 ...
- Java内部类、外部类之间访问权限
Java内部类.外部类之间访问权限 啥是内部类 内部类可以访问外部类的所有成员吗 那外部类能访问内部类的所有成员吗 匿名内部类 静态内部类呢 为啥会这样呢 得出结论 啥是内部类 顾名思义,内部类就是在 ...
- 第7.26节 Python中的@property装饰器定义属性访问方法getter、setter、deleter 详解
第7.26节 Python中的@property装饰器定义属性访问方法getter.setter.deleter 详解 一. 引言 Python中的装饰器在前面接触过,老猿还没有深入展开介绍装饰 ...
- 计算属性computed里面的getter和setter
参考一: 在 Vue 中,computed 的属性可以被视为是 data 一样,可以读取和设值,因此在 computed 中可以分成 getter(读取) 和 setter(设值),一般情况下是没有 ...
- android getter不起作用,java - 如何在Android Studio中自动生成getter和setter
java - 如何在Android Studio中自动生成getter和setter Android Studio中是否有一个快捷方式可以自动生成给定类中的getter和setter? 14个解决方案 ...
- java的四种修饰符访问权限
java的访问修饰符有四种:private.protected.public.default. 这四种访问修饰符的访问权限不一样. java修饰符访问权限 修饰符 所在类 同一个包内其他类 其他包内子 ...
- java学习笔记 java编程思想 第6章 访问权限控制
文章目录 6.1 包:库单元(the library unit) 6.1.1 代码组织 6.1.2 创建独一无二的包名 练习1 练习2 6.1.3 定制工具类 6.1.4 用import改变行为 练习 ...
最新文章
- nginx同域名代理tomcat不同目录下的文件
- evga x58服务器芯片组,为六核980X而生 EVGA发布X58 FTW3主板
- java消费者和生产者模型_Java实现简易生产者消费者模型过程解析
- CSDN markdown 如何更改文字字体、样式、颜色、大小?
- OpenCV主成分分析(PCA)简介
- 你写的Python代码规范吗?
- 静态方法+工厂方法(静态方法用途)
- Samba服务器(一):windows访问samba服务器共享文件的简单实现(图文并茂)
- 如何让计算机两个用户使用不同步,如何实现两台或多台电脑远程修改文件同步更新?...
- firefox伪造请求头信息,模拟手机访问网站
- Oracle PL/SQL进阶
- 编解码格式 -- AAC
- 湖南中医药高等专科学校计算机试题,湖南中医药高等专科学校2020年单招文化基础考试考纲...
- 如何向别人推荐(分享)一本书
- WORKGROUP无法访问,您可能没有权限使用网络资源,请与这台服务器的管理员联系以.......
- 【数据安全】4. Android 文件级加密(File-based Encryption)之密钥管理
- 关于grpc 的keepalive 的一些知识
- 为什么是UUID做主键
- 数据库《实验一 SQL Server数据库及对象的设计》
- CSS语义-icont+text
热门文章
- html z-dext优先级顺序,$ext{1D/1D}$ 动态规划的三种优化
- 微信小程序批量获取input的输入值,监听输入框,数据同步
- php csv linux,PHP处理CSV表格,用fgetcsv和fputcsv在数组和CSV间互转
- win8.1重装系统计算机管理打不开,Windows8计算机打不开192.168.0.1怎么办
- java三目表达式_史上最强《Java 开发手册》泰山版王者归来
- sprintf函数_C语言源代码展示:常用转换函数实现原理
- mysql故障切换_MySQL故障切换笔记之应用无感知设计详解
- mysql字段简索引_3万字总结,Mysql优化之精髓
- 盐城有哪些中专计算机学校,盐城有什么中专学校
- java求梯形面积程序_Java初级应用,计算关于梯形跟圆形的面积。该程序中有3个类:Lader、Circle和主类Test。...