0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

javaとpythonの違い(メモ)

Last updated at Posted at 2020-05-05

#はじめに
小生はこれまで書いてきたステップ数、時間ではJavaが圧倒的に多いです。
昨今、Pythonがかっこいいので勉強しています。
Javaとの違いをわかりしだいメモしていきたいです。

#インクリメント
pythonにはインクリメント演算子(++)が無い。

#オーバーロード
pythonはオーバーロードしたメソッド(同名だが引数の構成が異なる
メソッド)が作れない。

#for文

Java
for(int i=0;i<10;i++){
  //処理
}
Python
for i in range(10):
    #処理

#クラスメソッドの引数
pythonはクラスメソッドの第1引数は自分自身のオブジェクトであり、
慣習的にselfが使用される。

#インスタンス変数
pythonはインスタンス変数を使う時は、クラス内であっても明示的に
クラスオブジェクトを示す変数名で修飾しないといけない。(インスタンスメソッドも同様)

Java
class Hoge{
  int arg1;
     private void func(){
         arg1=0;
     }
}
Python
class Hoge:
    def func(self):
        self.arg1=0

#クラス変数(クラス変数)
pythonはクラス変数を使う時はクラス内であっても明示的にクラス名で修飾しなくてはいけない。
※typeでクラスを取り出すやり方でも可。

Python
class Test:
    a="クラス変数"
    def test(self):
        self.a="インスタンス変数"
        #クラス変数が表示される(どちらの書き方も可)
        print(Test.a)
        print(type(self).a)
        #インスタンス変数が表示される
        print(self.a)


test=Test()
test.test()

修飾するオブジェクトがインスタンスであればインスタンス変数
クラスであればクラス変数として扱われる。

0
2
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?