• Home
  • About
    • on Weekend photo

      on Weekend

      ๐™Ž๐™ฉ๐™ช๐™™๐™ฎ๐™ž๐™ฃ๐™œ

    • Learn More
    • Instagram
    • Github
  • Archive
    • All Posts
    • All Tags
    • All Categories
  • Categories
    • Problem Solving
    • TIL
    • Study
    • Etc
    • ํ•„์‚ฌ
  • Projects

Java Programming 1

21 Dec 2020

์ˆ˜๊ฐ• ๋„์„œ

Do it! ์ž๋ฐ” ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์ž…๋ฌธ

๊ณต๋ถ€ ๋ชฉํ‘œ

  1. java ๋ณต์Šต (1)
    • ํ•™๋ถ€ ๋•Œ ์ˆ˜๊ฐ•ํ–ˆ๋˜ java ์–ธ์–ด ๊ธฐ๋ณธ ๋ณต์Šต
    • ๋ณต์Šต ๋‚ด์šฉ : ์ž๋ฃŒํ˜•, ์—ฐ์‚ฐ์ž, ์ œ์–ด๋ฌธ, ํด๋ž˜์Šค์™€ ๊ฐ์ฒด
  2. java ๊ณต๋ถ€ (2)
    • ํ•™๋ถ€ ๋•Œ ์ˆ˜๊ฐ•ํ–ˆ์œผ๋‚˜ ๋Œ€์ถฉ ๊ณต๋ถ€ํ•˜๊ณ  ๋„˜์–ด๊ฐ”๋˜ ๋ถ€๋ถ„ ๋ณต์Šต
    • ๋ณต์Šต ๋‚ด์šฉ
    • ํด๋ž˜์Šค์™€ ๊ฐ์ฒด : ์ธํ„ฐํŽ˜์ด์Šค, ์ƒ์„ฑ์ž
    • this ์˜ˆ์•ฝ์–ด
    • ์‹ฑ๊ธ€ํ†ค ํŒจํ„ด (static ์‘์šฉ) - => ์ง€๋‚œ๋ฒˆ์—” ์—ฌ๊ธฐ๊นŒ์ง€
    • ArrayList
    • ์ƒ์†๊ณผ ๋‹คํ˜•์„ฑ : super, ๋‹ค์šด์บ์ŠคํŒ…, instanceof
    • ์ถ”์ƒ ํด๋ž˜์Šค
    • ์ธํ„ฐํŽ˜์ด์Šค์™€ ๋‹คํ˜•์„ฑ
  3. java jdk ๊ณต๋ถ€
    • ๊ธฐ๋ณธ ํด๋ž˜์Šค (Object, String, Wrapper, Class)
    • ์ปฌ๋ ‰์…˜ ํ”„๋ ˆ์ž„์›Œํฌ (์ œ๋„ค๋ฆญ ๋“ฑ)
    • ๋‚ด๋ถ€ ํด๋ž˜์Šค, ๋žŒ๋‹ค, ์ŠคํŠธ๋ฆผ
    • ์˜ˆ์™ธ์ฒ˜๋ฆฌ
    • ์ŠคํŠธ๋ฆผ ์ž…์ถœ๋ ฅ, ์ง๋ ฌํ™”์™€ ์—ญ์ง๋ ฌํ™”

์ฃผ๋กœ ์“ฐ๋Š” ์ถ•์•ฝ์–ด

  • src : ๋ณต์‚ฌํ•  ๋ฐฐ์—ด ์ด๋ฆ„
  • srcPos : ๋ณต์‚ฌํ•  ๋ฐฐ์—ด์˜ ์ฒซ ๋ฒˆ์งธ ์œ„์น˜
  • dest : ๋ณต์‚ฌํ•ด์„œ ๋ถ™์—ฌ ๋„ฃ์„ ๋Œ€์ƒ ๋ฐฐ์—ด ์ด๋ฆ„
  • destPos : ๋ณต์‚ฌํ•ด์„œ ๋Œ€์ƒ ๋ฐฐ์—ด์— ๋ถ™์—ฌ ๋„ฃ๊ธฐ๋ฅผ ์‹œ์ž‘ํ•  ์ฒซ ๋ฒˆ์งธ ์œ„์น˜

ํ‘œ์ค€ ์• ๋…ธํ…Œ์ด์…˜

  • ์• ๋…ธํ…Œ์ด์…˜์€ ์ปดํŒŒ์ผ๋Ÿฌ์—๊ฒŒ ๋ฉ”์„œ๋“œ์˜ ํŠน์ • ์ •๋ณด๋ฅผ ์ œ๊ณตํ•ด์ค€๋‹ค.
  • @Override : ์žฌ์ •์˜๋œ ๋ฉ”์„œ๋“œ๋ผ๋Š” ์ •๋ณด ์ œ๊ณต
  • @FunctionalInterface : ํ•จ์ˆ˜ํ˜• ์ธํ„ฐํŽ˜์ด์Šค๋ผ๋Š” ์ •๋ณด
  • @Deprecated : ์ดํ›„ ๋ฒ„์ „์—์„œ ์‚ฌ์šฉ๋˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ๋Š” ๋ณ€์ˆ˜, ๋ฉ”์„œ๋“œ์— ์‚ฌ์šฉ๋œ๋‹ค
  • @SuppressWarnings : ํŠน์ • ๊ฒฝ๊ณ ๊ฐ€ ๋‚˜ํƒ€๋‚˜์ง€ ์•Š๋„๋ก ํ•จ

๊ฐ€์ƒ ๋ฉ”์„œ๋“œ

package inheritance;

public class OverridingTest2 {
  public static void main(String[] args) {
    Customer vc = new VIPCustomer(10030, "ํ™๊ธธ๋™", 2000);
    vc.bonusPoint = 1000;

    System.out.println(vc.getCustomername() + " ๋‹˜์ด ์ง€๋ถˆํ•ด์•ผ ํ•˜๋Š” ๊ธˆ์•ก์€ " + vc.calcPrice(10000) + "์›์ž…๋‹ˆ๋‹ค.");
  }
}
  • VIPCustomer๋Š” Customerํ˜•์„ ์ƒ์†๋ฐ›๋Š” ํด๋ž˜์Šค์ด๊ณ , calcPrice()๋Š” VIPCustomer์—์„œ ์žฌ์ •์˜๋จ.
  • ์›๋ž˜๋Š” ์„ ์–ธํ•œ ํด๋ž˜์Šคํ˜•(Customer)์— ๋”ฐ๋ผ ๋ฉค๋ฒ„ ๋ณ€์ˆ˜์™€ ๋ฉ”์„œ๋“œ๊ฐ€ ํ˜ธ์ถœ๋˜์–ด์•ผ ํ•˜์ง€๋งŒ, ์ƒ์†์—์„œ ์ƒ์œ„ ํด๋ž˜์Šค์™€ ํ•˜์œ„ ํด๋ž˜์Šค์— ๊ฐ™์€ ์ด๋ฆ„์˜ ๋ฉ”์„œ๋“œ๊ฐ€ ์กด์žฌํ•  ๋•Œ ํ˜ธ์ถœ๋˜๋Š” ๋ฉ”์„œ๋“œ๋Š” ์ธ์Šคํ„ด์Šค์— ์˜ํ•ด ๊ฒฐ์ •๋œ๋‹ค.
  • ์ด๋ ‡๊ฒŒ ์ธ์Šคํ„ด์Šค์˜ ๋ฉ”์„œ๋“œ๊ฐ€ ํ˜ธ์ถœ๋˜๋Š” ๊ธฐ์ˆ ์„ ๊ฐ€์ƒ ๋ฉ”์„œ๋“œ(Virtual Method)๋ผ ํ•œ๋‹ค.
  • ํด๋ž˜์Šค๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ์ธ์Šคํ„ด์Šค๊ฐ€ ๋งŒ๋“ค์–ด์ง€๋ฉด ๋ฉค๋ฒ„ ๋ณ€์ˆ˜๋Š” ํž™ ๋ฉ”๋ชจ๋ฆฌ์— ์œ„์น˜ํ•œ๋‹ค. ๋ฉ”์„œ๋“œ๋Š” ์‹คํ–‰ํ•ด์•ผ ํ•  ๋ช…๋ น ์ง‘ํ•ฉ์ด๊ธฐ ๋•Œ๋ฌธ์—, ๋ฉ”์„œ๋“œ ์˜์—ญ(์ฝ”๋“œ ์˜์—ญ)์— ์ €์žฅ๋œ๋‹ค. ๋”ฐ๋ผ์„œ ์ธ์Šคํ„ด์Šค๊ฐ€ ๋‹ฌ๋ผ๋„ ๋™์ผํ•œ ๋ฉ”์„œ๋“œ๊ฐ€ ์‹คํ–‰๋œ๋‹ค.
  • ๊ฐ€์ƒ ๋ฉ”์„œ๋“œ์˜ ๊ฒฝ์šฐ์—” ๊ฐ€์ƒ ๋ฉ”์„œ๋“œ ํ…Œ์ด๋ธ”์ด ์ƒ์„ฑ๋œ๋‹ค. ๊ฐ€์ƒ ๋ฉ”์„œ๋“œ ํ…Œ์ด๋ธ”์€ ๊ฐ ๋ฉ”์„œ๋“œ ์ด๋ฆ„๊ณผ, ํ•ด๋‹น ๋ฉ”์„œ๋“œ๊ฐ€ ์ €์žฅ๋˜์–ด ์žˆ๋Š” ๋ฉ”์„œ๋“œ ์˜์—ญ์„ ๊ฐ€๋ฆฌํ‚ค๋Š” ๋ฉ”์„œ๋“œ ์ฃผ์†Œ๊ฐ€ ์ง์„ ์ด๋ฃจ๊ณ  ์žˆ๊ณ , ์–ด๋–ค ๋ฉ”์„œ๋“œ๊ฐ€ ํ˜ธ์ถœ๋˜๋ฉด ์ด ํ…Œ์ด๋ธ”์—์„œ ์ฃผ์†Ÿ๊ฐ’์„ ์ฐพ์•„์„œ ๋ฉ”์„œ๋“œ ์˜์—ญ์œผ๋กœ ๋„˜์–ด๊ฐ€๊ฒŒ ๋œ๋‹ค.

์ถ”์ƒํด๋ž˜์Šค



javabackend Share Tweet +1