python类与java类的区别与联系

最近在重温java基础的时候,把java与python的类中的成员进行了对比,做了简单的分析与对比,供大家参考。

一、java中的类中的五大成员

`

package chapter24;


public class Person {
    //1.属性(普通属性)
    public int age = 10;
    //1.属性(类属性)->所有对象共享,随着类的加载而记载
    public static String name = "小动物";

    //2.普通方法(对象)
    public void eat() {
        System.out.println("动物吃东西");
    }

    //2.静态方法(类)->当方法体内没有调用到任何属性时,用静态方法,无需new对象
    public static void play() {
        System.out.println("动物玩玩");
    }

    //3.构造方法
    public Person(int age) {
        this.age = age;
    }

    //4.普通代码块
    {
        System.out.println("我是父类普通代码块");
    }

    //4.静态代码块
    static {
        System.out.println("我是父类静态代码块");
    }
    //5.内部类(略)

}

在这里插入图片描述

二、python中类中的主要成员

# 类定义
class people:
    # 1.属性(类属性)->无需实例化对象,直接通过类名即可访问
    hand = '两只手'
    leg = 2
    gender = '男'
    # 1.属性(私有类属性)->私有属性在类外部无法直接进行访问,可以通过内部方法进行访问
    __weight = 0

    # 2.定义构造方法(定义在构造函数里的属性是成员属性)
    def __init__(self, n, a, w):
        self.name = n  # 1.属性(成员属性)
        self.age = a  # 1.属性(成员属性)
        self.gender = w  # 1.属性(成员属性)->若静态属性与普通属性重名,优先访问成员属性,成员属性屏蔽类属性

    # 3.普通方法(对象)
    def speak(self):
        print("%s 说: 我 %d 岁 " % (self.name, self.age))

    # 3.普通方法(私有)
    def __speak(self):
        print("我是私有方法")

    # 3.类方法
    @classmethod
    def eat(self):
        print("我是类方法")

    # 3.静态方法
    @staticmethod
    def study(self):
        print("我是静态方法")


# 实例化类
p = people('runoob', 10, 30)
p.speak()


  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值