首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Java private、protected、public default 区别

public: 具有最大访问权限,可以访问任何一个在classpath下类、接口、异常等。它往往用于对外情况,也就是对象或类对外一种接口形式。...private: 访问权限仅限于类内部,是一种封装体现,例如,大多数成员变量都是修饰符为private,它们不希望被其他任何外部类访问。 ?...作用域 注意:java访问控制是停留在编译层,也就是它不会在.class文件留下任何痕迹,只在编译时候进行访问控制检查。...其实,通过反射手段,是可以访问任何包下任何类成员,例如,访问类私有成员也是可能。...区别: public:可以被所有其他类所访问 private:只能被自己访问修改 protected:自身、子类及同一个包类可以访问 default:同一包类可以访问,声明时没有加修饰符,认为是

97730
您找到你想要的搜索结果了吗?
是的
没有找到

【基础】PHPpublicprivate,protected

public:表示全局,类内部外部子类都可以访问 private:表示私有,只有本类内部可以访问 protected:表示受保护,只有本类或者子类可以访问 示例: class Man{ private...'; //报错,因为name是private类型,只能在它本类访问 echo '我有'.$this->money.''; echo '我今年'....'; //报错,因为money 类型是protected,只能在他本类子类访问 echo $man->age.'...'; //报错 因为money是 protected 类型,只能在它本类子类访问 echo $ming->age.''; echo $ming->firend.'...'; //报错,因为firend是private类型,只能在它本类访问 echo $ming->talk().''; ps: 用技术有偏差,所以有的同学提问我可能也回答不上来

27020

Javaprivate、protected、publicdefault区别(详解)

(1)对于public修饰符,它具有最大访问权限,可以访问任何一个在CLASSPATH下类、接口、异常等。它往往用于对外情况,也就是对象或类对外一种接口形式。...(4)对于private来说,它访问权限仅限于类内部,是一种封装体现,例如,大多数成员变量都是修饰符为private,它们不希望被其他任何外部类访问。...下表为Java访问控制符含义使用情况 类内部 本包 子类 外部包 public √ √ √ √ protected √ √ √ × default √ √ × × private √ × × ×...其实,通过反射手段,是可以访问任何包下任何类成员,例如,访问类私有成员也是可能。 区别: (1)public:可以被所有其他类所访问。 (2)private:只能被自己访问修改。...(3)protected:自身,子类及同一个包类可以访问。 (4)default(默认):同一包类可以访问,声明时没有加修饰符,认为是friendly。

1.4K40

破局CmakePRIVATEPUBLIC,INTERFACE

前言 最近看了很多项目的代码,代码是用cmake编译,由于各种库之间链接关系错综复杂,加上PRIVATEPUBLIC,INTERFACE属性值,我在添加代码时候总会遇到稀奇古怪编译问题,网上看了很多文章...有三种: PRIVATE PUBLIC INTERFACE 缺省值为PUBLIC 二、可见性传递(非常重要) 每一个Target对于自身设置不同属性处理 对于...: 假设如下链接关系 target_link_libraries(B XXX A)// XXX为privatepublic,interface 如果XXX为private,A可传递属性变成...Bprivate property 如果XXX为public,A可传递属性变成Bpublic property 如果XXX为interface,A可传递属性变成Binterface...(CPP main.c) target_link_libraries(CPP B) 解读一下CmakeLists.txt,红色为传递过来属性 3.2最大差异就是CPPincludeA没了,那

50630

Controller请求,privatepublic有什么区别?

Controller 请求方法,通常我们都是 public ,如果是 private 、protected 行不行,为什么?...后来一个同事比较认真,第二天早上测试后发现报错了,给我反馈说 private 方法内部注入 service 为 null,修改成 public 后就不会为 null。为什么会产生这个问题呢?...(); } } /testA是 pulibc,/testB是 pirvate,测试结果「均能返回"业余草"字符串」 测试公司环境还有一个不太同就是公司项目中有 Aop 切面处理访问日志...会不会是切点注解修饰符匹配不到呢?将切点中修饰符从 public 修改成 private。...对于子类,其父类private修饰方法,子类如果与父类不在同一包下,是没有访问权限,此场景下,cglib 生成子类,不会父类在同一包下,也就是private修饰方法,不能进行动态代理,所以会报空指针异常

1.7K20

Java 中使用 publicprivate protected 修饰方法

当然对类来说,相信大部分都默认使用 Public,大部分人都不去纠结。 Public: 简单来说就是谁都可以访问,你写个类除了特殊要求,当然都是希望大部分人用Private:私有。...简单来说就是一个方法,你只希望自己这个类可以用,不希望这个方法在其他类中使用。Private 这个在类私有方法定义比较多。...Protected:这个就是最纠结,简单来说就是这个修饰方法使用范围比 Public 小,但是又比 Private 大。对于其他外部类,protected 就变成 private。...官方 文章对上面几个修饰有了定义。 也顺便偷了一张图。 对我们来说 Protected Public 也差不多了,没有很多奇葩需求的话,你就 Public 算了,省得纠结。...这就是为什么你看很多人代码时候,大部分都是 Public Private,用 Protected 修饰方法远没有这 2 个这么多。

61120

DjangoAutoField字段使用

Django是一个机智框架】 默认情况下Djang会为ORM定义每一张表加上一个自增ID列,并且用这个列来做主键;出于一个MySQL-DBA工作经历我觉得 Djanog还真是机智;这样么说主要是因为我遇到过许多主从延时问题...补充知识:Djangomodels下常用Field以及字段参数 一、常见FieldType数据库字段类型 1、AutoField:自增Field域,自动增加一个数据库字段类型,例如id字段就可以使用该数据类型...,参数必须填入primary_key=True 2、BigAutoField:AutoField相同,只是比AutoField要大,参数必须填入primary_key=True 3、BigIntegerField...”表名_set” 4、on_delete:当删除关联表数据时,当前表与其关联行为,例如删除一个出版社,那么这个出版社有关联书籍也都被删除掉了,下面介绍on_delete参数值: on_delete...https://docs.djangoproject.com/en/dev/ref/models/fields/ 以上这篇DjangoAutoField字段使用就是小编分享给大家全部内容了,希望能给大家一个参考

6.3K20

DjangoORM介绍字段及其参数

在用户层面业务逻辑层面,我们是面向对象。当对象信息发生变化时候,我们就需要把对象信息保存在关系数据库。...ORM优势   ORM解决主要问题是对象关系映射。 类和数据库表对应; 类每个实例对应表一条记录; 类每个属性对应表每个字段。...DjangoORM Django项目使用MySQL数据库 1....它包含了你存储数据重要字段行为。通常,一个模型(model)映射到一个数据库表, 基本情况: 每个模型都是一个Python类,它是django.db.models.Model子类。...Django支持MySQL5.5及更高版本。  DjangoORM常用字段参数 常用字段 AutoField:int自增型,必须填入参数 primary_key = True 。

2.8K80

phppublic、protected、private三种访问控制模式及selfparent区别(转)

phppublic、protected、private三种访问控制模式区别 public: 公有类型 在子类可以通过self::var调用public方法或属性,parent::method调用父类方法...调用父类方法 在实例不能通过$obj->var 来调用 protected类型方法或属性 private: 私有类型 该类型属性或方法只能在该类中使用,在该类实例、子类、子类实例中都不能调用私有类型属性方法...他们主要区别在于self可以调用父类公有或受保护属性,但parent不可以调用 self:: 它表示当前类静态成员(方法属性) 与 \(this 不同,\)this是指当前对象 附代码: <...php /** * parent 只能调用父类公有或受保护方法,不能调用父类属性 * self  可以调用父类除私有类型方法属性外所有数据 */ class User{...例如,如果父类访问权限是protected,那么在子类重写方法权限就要是protected或public

78960

Django获取model字段字段verbose_name方式

) gameid = models.CharField(u'游戏id',max_length=20) def __str__(self): return self.name 获取字段...__name__) #返回是‘charfield','textfield',等这些类型 return field_dic 注:appname是model所在app名字,modelname是model...名字 如果在view执行get_model.filed(‘Game_app’,’Game’),那么field_dic结果为: {‘gameid’: ‘\u6e38\u620fid’, ‘id’:...Forms组件 参数配置案例 input样式, 渲染标签加class 错误信息提示 Forms渲染出标签类型 密码型、文本型、邮箱型框 from django.forms import widgets...获取model字段字段verbose_name方式就是小编分享给大家全部内容了,希望能给大家一个参考。

4.3K10
领券