전체 글 (306)
2021-12-29 22:57:55
반응형
# 상속 (inheritance))

class Person:               # initialize(초기화)를 줄여서 init이라고 함
  def __init__(self, name, age): # __init__() 함수는 self를 첫 인자로 받고, 
                            # Person()에서 새로 쓸 변수를 설정할 수 있음
    self.name = name
    self.age = age

  def say_hello(self, to_name): 
    print("안녕! " + to_name + " 나는 " + self.name)  # say_hello() 함수의 self라는 인자가 하는 역할

  def introduce(self):
    print("내 이름은 " + self.name + " 그리고 나는 " + str(self.age) + " 살이야") 
    # age 는 숫자 타입을 가진 변수로 문자열 타입으로 캐스팅을 해줘야 함

class Police(Person):  # Police라는 클래스가 Person이라는 클래스를 상속한다.
  def arrest(self, to_arrest):
    print("넌 체포됐다, " + to_arrest)

class Programmer(Person):
  def program(self, to_program):
    print("다음엔 뭘 만들지? 아 이걸 만들어야겠다: " + to_program)

wonie = Person("워니", 20)
jenny = Police("제니", 21)
michael = Programmer("마이클", 22)

jenny.introduce()
jenny.arrest("워니")
michael.introduce()
michael.program("이메일 클라이언트")

반응형
2021-12-29 22:43:36
반응형
# 클래스 - 함수랑 변수들의 합
# 오브젝트(인스턴스) - 클래스를 이용해서 만든 물체

# ex) 클래스 == 빵틀 / 오브젝트 == 빵

class Person:
  name = "워니"

  def say_hello(self): 
    print("안녕! 나는" + self.name)  # say_hello() 함수의 self라는 인자가 하는 역할

p = Person()  # p라는 오브젝트 생성
p.say_hello() # p라는 인자에서 say_hello()라는 함수를 가져옴

print("================")
print("================")


# name이라는 변수를 "워니"로 고정시키지 않고 오브젝트를 만들때 새로 이름 할당

class Person:               # initialize(초기화)를 줄여서 init이라고 함
  def __init__(self, name): # __init__() 함수는 self를 첫 인자로 받고, 
                            # Person()에서 새로 쓸 변수를 설정할 수 있음
    self.name = name

  def say_hello(self): 
    print("안녕! 나는" + self.name)  # say_hello() 함수의 self라는 인자가 하는 역할

wonie = Person("워니")      # wonie라는 오브젝트 생성
michael = Person("마이클")  # michael라는 오브젝트 생성
jenny = Person("제니")      # jenny라는 오브젝트 생성

wonie.say_hello()   # wonie라는 인자에서 say_hello()라는 함수를 가져옴
michael.say_hello() # michael라는 인자에서 say_hello()라는 함수를 가져옴
jenny.say_hello()   # jenny라는 인자에서 say_hello()라는 함수를 가져옴

print("================")
print("================")

class Person:               # initialize(초기화)를 줄여서 init이라고 함
  def __init__(self, name): # __init__() 함수는 self를 첫 인자로 받고, 
                            # Person()에서 새로 쓸 변수를 설정할 수 있음
    self.name = name

  def say_hello(self, to_name): 
    print("안녕! " + to_name + " 나는 " + self.name)  # say_hello() 함수의 self라는 인자가 하는 역할

wonie2 = Person("워니")      # wonie라는 오브젝트 생성
michael2 = Person("마이클")  # michael라는 오브젝트 생성
jenny2 = Person("제니")      # jenny라는 오브젝트 생성

wonie2.say_hello("철수")   # wonie라는 인자에서 say_hello()라는 함수를 가져옴
michael2.say_hello("영희") # michael라는 인자에서 say_hello()라는 함수를 가져옴
jenny2.say_hello("미지")   # jenny라는 인자에서 say_hello()라는 함수를 가져옴

print("================")
print("================")

class Person:               # initialize(초기화)를 줄여서 init이라고 함
  def __init__(self, name, age): # __init__() 함수는 self를 첫 인자로 받고, 
                            # Person()에서 새로 쓸 변수를 설정할 수 있음
    self.name = name
    self.age = age

  def say_hello(self, to_name): 
    print("안녕! " + to_name + " 나는 " + self.name)  # say_hello() 함수의 self라는 인자가 하는 역할

  def introduce(self):
    print("내 이름은 " + self.name + " 그리고 나는 " + str(self.age) + " 살이야") 
    # age 는 숫자 타입을 가진 변수로 문자열 타입으로 캐스팅을 해줘야 함

wonie3 = Person("워니", 20)      # wonie라는 오브젝트 생성
wonie3.introduce()


print("================")
print("================")

반응형
2021-12-29 21:24:12
반응형

[javadoc 설정하기]

1. Eclipse IDC 실행 → Window → Preferences 

2. Preferences → General → Content Types → Text → Java Source File → Default encoding : UTF-8 입력 후 Update 버튼 클릭 → Apply and Close

3. 좌측 Project Explorer → 프로젝트 마우스 우클릭 → Export... 

4.  Export... → javadoc 입력 후 선택 → Next >

5.  Generate javadoc → Use standard doclet 경로 확인 후 Next >

6. 확인만 한 후 Default 설정으로 Next >

 

7. VM options에 아래 값 입력 후 Next >

입력내용 : 

-locale ko_KR -encoding UTF-8 -charset UTF-8 -docencoding UTF-8

 

* 좌측 Project Explorer에서 해당 프로젝트에 javadoc 폴더 생성 여부 확인 

============================================================================

※ [에러 발생 할 경우 해결방법]

javadoc: error - java.lang.IllegalArgumentException

해당 에러는 사용자 pc에 이클립스가 설치된 경로 충돌로 CLASSPATH 재설정을 해줘야 함 

 

1. 내 PC → 마우스 우클릭하여 속성 마우스로 선택

2. 시스템 실행되면 좌측 확인 → 고급 시스템 설정 마우스로 클릭

 

3. 시스템 속성 → 고급 탭 → 환경 변수 선택

4. 환경 변수 → 시스템 변수(S) → CLASSPATH 선택 후 편집 마우스로 클릭

5. 아래 경로 추가 후 확인 버튼 마우스로 클릭

C:\Program Files\Eclipse Adoptium\jdk-8.0.312.7-hotspot\lib

C:\Program Files\Eclipse Adoptium\jdk-8.0.312.7-hotspot\lib\tools.jar

※ 경로에 대한 버전이 사용자에 따라 다를 수 있으니 Eclipse 설치 경로 직접 들어가서 확인이 필요

6. Eclipse 재실행 후 javadoc 생성 여부 재확인

- 에러는 뭔가 뜨지만 javadoc 폴더에 파일들이 정상적으로 생성됨을 확인할 수 있다.

 

* 참고 

https://hbesthee.tistory.com/1380

https://blog.csdn.net/u014635374/article/details/106003970#comments_15290528

https://blog.naver.com/inho1213/80069534301

https://www.extutorial.com/en/blog/1486584

https://bugs.java.com/bugdatabase/view_bug.do?bug_id=6219854 

 

반응형

'Java > 자바 독학' 카테고리의 다른 글

Jsoup 설정 및 웹 크롤링  (0) 2021.12.30
Maven Project 생성하기  (0) 2021.12.30
이클립스 우클릭 New 목록 설정하기  (0) 2021.12.27
2021-12-29 01:44:38
반응형
# 과일 숫자 세는 프로그램 만들기

fruit = ["사과", "사과", "바나나", "바나나", "딸기", "키위", "복숭아", "복숭아", "복숭아"]

d = {}
# d = {"사과": 1}

for f in fruit: # 반복문으로 fruit이라는 list에 있는 값들이 f로 하나씩 들어옴
  # f = "사과"

  if f in d:   # "사과" 라는 key가 d 라는 딕셔너리에 들어있어?
    d[f] = d[f] + 1 # 그럼 "사과"" 갯수를 하나 올려줘
  else: 
    d[f] = 1   # 만약 "사과"란느 애가 없으면, 그걸 딕셔너리에 넣고 value는 1로 만들어줘

print(d)

반응형

'Python > 코딩 1시간만에 배우기_파이썬' 카테고리의 다른 글

10. 상속  (0) 2021.12.29
9. 클래스  (0) 2021.12.29
5. 자료구조 - list(리스트)  (0) 2021.12.29
4. 반복문(for, while) / break, continue  (0) 2021.12.28
3. 함수 (Function)  (0) 2021.12.28
2021-12-29 00:52:06
반응형
# 자료구조 (리스트, 튜플, 딕셔너리)

# List(리스트) -- 엘레멘트 element  여러개를 그룹핑할 때 쓰임
# Tuple(튜플) - list에서 쓰는 것들 대부분 사용 가능
# Dictionary(딕셔너리) - Key와 Value로 이루어져 있는 자료구조

x = dict()
y = {}

print(x)
print(y)

print("================")
print("================")

x = {
  "name" : "워니",
  "age" : 20,
}

print(x)
print(x["name"]) # x라는 Dictionary(딕셔너리)에 name이라는 Key에 있는 Value가 뭔지 출력
print(x["age"])  # x라는 Dictionary(딕셔너리)에 age라는 Key에 있는 Value가 뭔지 출력

# * List(리스트)는 mutable(가변)이기에 Dictionary(딕셔너리)의 Key를 쓸 수 없음


print("================")
print("================")
# Dictionary(딕셔너리)는 여러가지 Type을 넣을 수 있음

x = {
  0 : "Wonie",
  1 : "Hello",
  "age" : 20,
}

print(x[0])        # x라는 Dictionary(딕셔너리)에 0이라는 Key에 있는 Value가 뭔지 출력
print(x[1])        # x라는 Dictionary(딕셔너리)에 1이라는 Key에 있는 Value가 뭔지 출력
print(x["age"])    # x라는 Dictionary(딕셔너리)에 age라는 Key에 있는 Value가 뭔지 출력
print("age" in x)  # age라는 Key가  x라는 Dictionary(딕셔너리) 안에 들어있는지 확인 가능 
print("name" in x) # name이라는 Key가 x라는 Dictionary(딕셔너리) 안에 들어있는지 확인   
                   # True / False
print("================")
print("================")

print(x.keys()) # x라는 Dictionary(딕셔너리)에 있는 Key 값을 출력
print(x.values()) # x라는 Dictionary(딕셔너리)에 있는 Value 값을 출력

print("================")
print("================")

for key in x :   # 튜플과 마찬가지로 반복문 이용 가능
  print(key)     # x라는 Dictionary(딕셔너리) 안에 있는 key 값 전체 출력
  print(x[key])  # x라는 Dictionary(딕셔너리) 안에 있는 Value 값 전체 출력

print("================")
print("================")

for key in x :                   # 튜플과 마찬가지로 반복문 이용 가능
  print("key: " + str(key))      # x라는 Dictionary(딕셔너리) 안에 있는 key 값 전체 출력
  print("value: " + str(x[key])) # x라는 Dictionary(딕셔너리) 안에 있는 Value 값 전체 출력


# Dictionary(딕셔너리)에서는 Assignment = Dictionary 안의 값을 업데이트 하는 것이 가능

print("================")

x = {
  0 : "Wonie",
  1 : "Hello",
  "age" : 20,
}

x[0] = "워니"
print(x)

print("================")
# Dictionary(딕셔너리)에서는 Assignment = Dictionary 안의 새로운 값을 넣는 것이 가능

x["school"] = "한빛"
print(x)

반응형
2021-12-29 00:28:42
반응형
# 자료구조 (리스트, 튜플, 딕셔너리)

# List(리스트) -- 엘레멘트 element  여러개를 그룹핑할 때 쓰임
# Tuple(튜플) - list에서 쓰는 것들 대부분 사용 가능

x = tuple()
y = ()

print(x)
print(y)

print("================")
print("================")

x = (1,2,3)
y = ('a', 'b', 'c')
z = (1, "hello", "there")

print(x+y)
print('a' in y) # a이라는 element가 y라는 Tuple에 존재 여부 확인 True / False
print(z)
print(z.index(1)) # 1이라는 element가 z라는 Tuple에 몇 번째에 위치하는지 확인

print("================")
print("================")

# Tuple과 List의 차이점 
# Tuple에서는 Assignment = 튜플 안의 값을 업데이트 하는 것 -> 안됨

x[0] = 10 # Tuple은 안에 들어있는 element 애들을 못 바꿈

# mutable(가변) vs immutable(불변)
# mutable(가변)   : 값을 바꿀 수 있음
# immutable(불변) : 값을 바꿀 수 없음

반응형