首页 > 其他分享 >重学面向对象-基础篇02包和访问控制

重学面向对象-基础篇02包和访问控制

时间:2024-08-05 14:51:12浏览次数:10  
标签:02 包中 String 访问控制 面向对象 导入 test com public

包和访问控制

基础概念

包:用于区分类位置,将类分类package

包的命名规则:英文和数字的组合,最好以域名形式com.test

访问权限控制:

  • private:私有,无法被除当前类以外的任何位置访问
  • 什么都不写:默认,只能被类本身和同包中的其他类访问
  • protected:受保护,标记为受保护的内容可以能被类本身和同包中的其他类访问,也可被子类访问
  • public:公共,允许在任何地方被访问

代码实现

package com.test; //在类的最上面添加package关键字来指明当前类所处的包

public class Main { //将Main类放进com.test这个包中
    public static void main(String[] args) {

    }
}
//当我们需要使用其他包中的类时,需要先进行导入当我们需要使用其他包中的类时,需要先进行导入
package com.test;

import com.test.entity.Person; //使用import关键字导入其他包中的类

public class Main {
    public static void main(String[] args) {
        Person person = new Person(); //只有导入后才能使用
    }
}

如果一个包中有多个类,我们可以使用*表示导入这个包中全部的类

import com.test.entity.*
public class Person {
    public String name; //在name变量前添加public关键字,将其可见性提升为公共等级
    int age;
    String sex;
}
//如果某个类中存在静态方法或是静态变量,那么我们可以通过静态导入的方式将其中的静态方法或是静态变量直接导入使用,但是同样需要有访问权限的情况下才可以
package com.test.entity;

public class Person {
    public String name;
    int age;
    String sex;

    public static void test(){
        System.out.println("我是静态方法");
    }
}
import static com.test.entity.Person.test; //静态导入test方法

public class Main {
    public static void main(String[] args) {
        test(); //直接使用即可
    }
}

我是静态方法

标签:02,包中,String,访问控制,面向对象,导入,test,com,public
From: https://www.cnblogs.com/microwang/p/18343222

相关文章

  • 重学面向对象-基础篇01类与对象
    类与对象基础概念类:一类事物,比较概括性(动物)对象:类的实例,具体的某样事物(猫)属性:类的成员变量,表示某事物所具有的特征(性别)方法:对象可以做出的一些行为,是语句的集合,为了完成某件事情而存在(抓老鼠)方法定义时编写的参数,我们一般称为形式参数,而调用方法实际传入的参数,我们称为实际......
  • 面向对象设计基本原则
    本文由ChatMoney团队出品引言在软件开发过程中,随着系统复杂度的增加和业务变更,程序员面临诸多挑战,如耦合性、内聚性、可维护性、可扩展性和可重用性。设计模式能有效地解决这些问题。设计模式蕴含了面向对象的精髓,掌握面向对象设计和分析是掌握设计模式的基础。它能帮助我们......
  • 2024最全 Java 面试八股文(程序员必备)
     一、Java基础篇1.接口和抽象类的区别相似点:(1)接口和抽象类都不能被实例化(2)实现接口或继承抽象类的普通子类都必须实现这些抽象方法不同点:(1)抽象类可以包含普通方法和代码块,接口里只能包含抽象方法,静态方法和默认方法,(2)抽象类可以有构造方法,而接口没有(3)抽象类中的成员变......
  • 免费【2024】springboot 大学校园旧物捐赠网站的设计与实现
    博主介绍:✌CSDN新星计划导师、Java领域优质创作者、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和学生毕业项目实战,高校老师/讲师/同行前辈交流✌技术范围:SpringBoot、Vue、SSM、HTML、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app、大数......
  • 免费【2024】springboot 大学生家教管理系统的设计与实现
    博主介绍:✌CSDN新星计划导师、Java领域优质创作者、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和学生毕业项目实战,高校老师/讲师/同行前辈交流✌技术范围:SpringBoot、Vue、SSM、HTML、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app、大数......
  • 【Mac】Microsoft Office LTSC 2024 for Mac(office全家桶) v16.87中文激活版
    microsoftofficeLTSC2024是一款高性能、高安全性、易用性强的office套件。它整合了最新的功能和技术,同时提供了长期的支持和更新服务。对于需要稳定运行、不能频繁接受功能更新的用户来说,officeLTSC2024是一个理想的选择。......
  • 最新版Sonible Plugins Bundle v2024 win&mac,简单智能,持续更新长期有效
    一。SoniblePluginsBundlev2024win&mac    SoniblePluginsBundle是一款以创作者为中心的智能音频插件系列。这些工具的特点是易于使用,搭配高级处理和优质音质。pure:bundle的所有插件都由sonible的智能插件系列中使用的技术驱动,但在设计时考虑到了创作者。pure:......
  • Haskell:面向对象OOP的实现
    Haskell作为一种纯函数式编程语言,并不直接支持传统面向对象编程(OOP)中的类、继承、多态等概念。然而,Haskell的强大类型系统和一些高级特性允许开发者以函数式的方式模拟OOP的某些方面。以下是一些Haskell中模拟OOP支持的示例:1.使用记录(Record)和类型类(Typeclass)模......
  • 2023 福建省第三届工业互联网创新大赛CTF Misc-Covertchannel2
    题目:近日,公司Windows服务器被入侵,黑客使用了一个比较隐蔽的信道将机密凭据传输了出去,但是蛛丝马迹还是被流量采集设备捕获了,你能从中找回丢失的flag吗?分析:分析该流量包发现了有一个rsa.key,并且在数据包长度为126和119中发现了,secrets.txt和data.zip,接下来就是写脚本提......
  • SSM番剧评价推荐3ar02 本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表系统内容:用户,热门番剧,高分番剧,热推番剧,番剧推荐,打赏信息,平台审核员,审核通知,番剧分类开题报告内容一、研究背景随着网络文化的兴起和动漫产业的蓬勃发......