Java Interview Questions

studied byStudied by 24 people
5.0(1)
Get a hint
Hint

Mik a Wrapper osztályok?

1 / 84

flashcard set

Earn XP

Description and Tags

Junior and intermidiate Question for Java interview.

85 Terms

1

Mik a Wrapper osztályok?

Objektumok. Minden primitív adattípushoz tartozik egy wrapper osztály, mely egy nem primitív osztályt hoz létre belőlük, ami a heap-n tárolódik.

New cards
2

Mi a classloader?

A class loader a legelső fájl, amit betölt a JVM. Dinamikusan működik, futásidőben. A memóriában tárolódik. Bootstrap classloader a fő osztály és minden más classloader alá tartozik.
pl.: System, Extension, Application classloader.

New cards
3

Mi a marker interface?

Egy olyan interface, amely nem tartalmaz változókat, metódusokat, csak futásidejű információt nyújt a programnak.
pl.: Serializable, cloneable, remote …

New cards
4

Sorold fel az 5 fő memóriakiosztást!

  1. Class memory

  2. Heap memory

  3. Stack memory

  4. Program counter Registry

  5. Native Method Stack memory

New cards
5

Mi a Java String Pool?

A Heap memóriában Stringek gyűjteménye. Ha létrehoztunk egy Stringet, akkor a JVM először megnézi, hogy létezik-e. Ha igen, akkor egy referenciát ad meg. Ha nem, akkor helyet foglal neki és létrehozza.

New cards
6

Mi a Late Binding?

A Polimorfizmus hatására, ha egy gyerekosztály az “@override” kulcsszóval felüldefiniálja a szülő metódusát, akkor a program, futásidőben dönti el, hogy annak a metódusnak épp melyik változatát fogja használni.

New cards
7

Mi az enumeráció?

Egy interfész, amely lehetővőteszi, a kollekcióban tárolt elemek szekvenciális hozzáférését. Kezelhetünk és felsorolhatunk különböző értékeket egy adott adattípusban.

New cards
8

Mi a copy contructor?

Egy olyan constructor, amelynek paraméterében önnön maga típusát várja. Ezzel könnyen létre tudunk hozni egy másolatot egy már létező példányból. Ez jobban működik, mintha a clone() metódussal másolnánk le a példányt. (deep copy készül).

New cards
9

Mi történik, ha a main nem static?

Sikeresen lefordul, de egy Run-time errort fog dobni: “NoSuchMethodError.”

New cards
10

Visszaadhat-e egy konstruktor valamilyen értéket?

Igen alapértelmezetten magát az osztályt adja vissza. Külső behatást nem tudunk gyakorolni rá.

New cards
11

Mi a “this” kulcsszó?

Ez egy referencia kulcsszó, amellyel az épp aktuális osztály metódusaira, változóira konstruktorára utalunk.

New cards
12

Mi a lokális változó?

Egy metódusban vagy konstruktorban létrehozott változó, ami akkor jön létre, amikor a program belép a metódusba és kilépéskor megszűnik a létezésük. Pont ezért a Heap memory-ban tárolódnak és kívülről nem hozzáférhető.

New cards
13

Mi a különbség a >> és a >>> közt?

Mindkettő biteltolást jelent jobbra.
pl.: >> esetén a biteket eltolja jobbra és közben, figyeli az előjelet. Negatív számoknál 1-ket hoz be, pozitívaknál pedig 0kat. (signed)
01100111>>>2 → 0001100 lesz, előjeltől függetlenül mindig 0kat hoz be. (unsigned, nem tartja meg az előjelet)

New cards
14

Futtatható-e úgy a program, hogy “static public void main(){}”?

Igen, mert a java nyelv nem köti meg a módosító szavak sorrendjét.

New cards
15

Mire használjuk a generikus típusokat?

Typesafety-t biztosítanak. Átláthatóbb és hatékonyabb lesz a kód. Futásidő helyett már fordításkor lezajlik.
Metódusnál megadhatjuk, hogy milyen értéket kell biztosan visszaadni, még voidnál is.
Típusok: <E>,<T>,<K>,<V>,<N>

New cards
16

Mi az instance változó?

Egy osztályon belül, de metóduson kívül létrehozott változó, mely példányosításkor foglal helyet a program a heap-n. Alapértelmezett értéke 0, false, null.

New cards
17

Statikus metódus overloading-olható?

Nem, statikus metódust nem tudunk felülírni a gyerekosztályban. Hibát fog dobni. “Static method cannot be referenced.”

New cards
18

Mi az asszociáció?

Osztályok között kétirányú összeköttetés, melyben egyik fél sincs a másik befolyása alatt. Mindkét irányba lehet adatot továbbítani.
Pl.: Professzor - kurzus, bank - ügyfél

New cards
19

Mi az a JDK?

Jaba Developement Kit. Ez egy összesített csomag a JRE-nek és a fejlesztői eszközöknek.
Oracle: JDK SE, JDK EE, JDK ME

New cards
20

Mi a JIT?

Just-in-Time compiler. Ez a Java runtime envirement-hez tartozik. Futásidőben fordítja le a a byte kódokat gépi nyelvre.

New cards
21

Miért tekintjük Dinamikusnak a Java nyelvet?

Mert a java nyelv könnyen alkalmazkodik a változó környezetekhez. Sok futásidejű információt tartalmaz, amik segítik az objektumokhoz való hozzáférést futásidőben.

New cards
22

Le tudsz futtatni egy kódot mielőtt lefutna a main?

Igen, a static kulcsszót használva bármilyen metódus előtt előbb le fog futni, minthogy a program belépne a main-be.

New cards
23

Lehet-e együtt használni a “this()” és a “super()” kulcsszavakat?

Nem lehet használni a kettőt együtt csak külön külön.

New cards
24

Sorold fel egy applet élettartamát!

  1. Initialization

  2. Start

  3. Stop

  4. Destroy

  5. Paint

New cards
25

Mi a lokális változók alapértelmezett értéke?

Ha létrehozunk egy változót, akkor annak nincs alapértelmezett értéke, ha csak mi nem adunk, ezért alapértelmezetten vagy random lesz vagy egy úgynevezett “garbage” érték. Ez a korábban azon a címen létező változó érteke lesz.

New cards
26

Mi a statikus változó?

A statikus változóknak már fordításidőben foglalódik hely a Stack memory-ban, Mindig csak egy másolat van belőlük, még akkor is, ha többször van egy objektum példányosítva.

New cards
27

Mi a csomag(Package)?

Egy projekten belül a fájlrendszer így néz ki: Projekt → src mappa → Package → classfile → code. A csomag az osztályok, interfészek, könyvtárak és JAR fájlok összessége. Segít, hogy a kódokat újra felhasználjuk.

New cards
28

Mi a super kulcsszó?

Ez egy referencia kulcsszó, mely a közvetlen szülő osztályra referál.

New cards
29

Mi az object cloning?

Ez a .clone() metódus, amellyel képesek vagyunk teljesen lemásolni egy már létező objektumot. (deep clone)

New cards
30

Miért nem teljesen objektum orientált a java nyelv?

Mert még mindig 8+ primitív adattípust támogat.

New cards
31

Mi a kivétel?

A kivétel egy váratlan esemény a program futása közben, amely megállíhatja a programot. Ezeket a megállásokat kezelhetjük Exception Handlinggel. pl.: Try-Catch

New cards
32

Mi a final kulcsszó?

Funkciója függ, hogy hol használjuk.
Adattag: Csak egyszer fog felvenni értéket az adattag, amit később nem tudunk megváltoztatni a program futása alatt, ezt megteheti deklarációkor vagy, mikor meghívjuk a konstruktort.
Metódus: Nem írható felül (@override) a leszármazott osztályokban.
Osztály: Nem lehet gyerekosztálya.

New cards
33

Hányszor hívja meg a program a finalize() metódust?

A Java runtime hívja meg a finalize() metódust az objektumokra. Mindig akkor mielőtt a Garbage Collector lefutna, mivel a finalize() gondoskodik róla, hogy minden esetlegesen nyitva maradt fájlt bezárjon.

New cards
34

Lehetséges a pointerek megvalósítása java-ban?

Nem lehetséges. A pointerek közvetlen a memóriacímre mutatnak, de a JVM saját maga kezeli a memóriacímeket és az egyszerűség megtartása érdekében nem tették lehetővé a hozzáférést.

New cards
35

Miért gyorsabb a delete funkció a LinkedList-en, mint az Array-ben?

Linkelt listában egy minimális változtatás szükséges törlés esetén. Pontosabban, a kitörölt elemre mutató kulcsot kell módosítani, hogy a következő elemre mutasson.
Array-ben ez sokkal több módosítással jár, mivel a kitörölt elem soron következő tagjait mind eggyel előrébb kell mozgatni.

New cards
36

Mi a thread lépései?

A thread lépései:

  1. New Born

  2. Runnnable

  3. Running

  4. Blocked (input/output)

  5. Dead (JVM megszüntetése)

New cards
37

Mi a singleton osztály?

Amikor egy osztály konstruktorát priváttá tesszük, akkor abból az osztályból csak egy példányt tudunk létrehozni, ezért hívjuk Singleton-nak.

New cards
38

Java interface-k és absztrakt osztályok közti különbség?

Egy Absztrakt osztályban 0..n absztrakt és nem absztrakt metódus létezhet, míg az interfészekben csak absztrakt metódusok lehetnek. Az interfészekkel lehet többszörös öröklődést megvalósítani. Minden implementált interfész metódusát meg kell valósítani egy osztályon belül, kivéve ha az osztály abstract.

New cards
39

Milyen loggolási keretrendszert ismersz?

Log4J
Ezzel a keretrendszerrel ellenőrizni tudjuk, hogy a programunk megfelelően működik és a várt eredményt adja. A fejlesztők a log üzenetek alapján tudják eldönteni a bug állapotát, mikor, hol keletkezett a hiba.

SLF4J stb.

New cards
40

Milyen adatstruktúrákat ismersz?

Set, List, Map, Queue, Stack, LinkedList, Concurrent

New cards
41

Hogyan működik a HashMap?

A HashMap előnye, hogy az adatok beillesztése, elem keresése és lekérése O(1) időben zajlik a kulcsok alapján. Value szerint O(n). Bármilyen osztályt használhatunk kulcsként, viszont akkor meg kell adni a .euqals() és a .hashcode() működését @override-al. Amikor létrehozzuk a HashMap-t akkor a kulcs lefutattja a hashcode() metódusát, ami kiválaszt egy bucket-t és ott eltárolja az értéket. Kulcs alapján kereséskor szintén lefut a hashcode és abban a bucket-ben végig iterál a kulcs .equals() metódusa.
Pl.: Map<String, Product> Products = new HashMap<> ();

New cards
42

Java-ban mi a lock? Mikor használják?

A lock a többszálúságot vezérlő/befolyásoló interfész a java nyelvben. Feladat például:

  1. A notify során a legrégebb óta várakozó kapja meg a vezérlést.

  2. Ha van a szálnak egy kritikus szakasza, amit mindegy, hogy mikor hajt végre, akkor a futás közben ellenörzi, hogy épp várakoznak-e és megakadna vagy sem. Ha nem akadna meg akkor belép, ha megakadna, akkor lefoglalja az erőforrást és addig mást csinál.

  3. Sorba áll egy erőforrásért, de ha adott időben nem kerül sorra, akkor tovább lép.

  4. A szinkronizálás legyen eltérő adott erőforrás olvasása és írása során.

  5. Kívülről meg lehessen szakítani a szál várakozását akkor is, ha nem kerülne sorra.

    .lock() - erőforrást lehet lefoglalni és várakozni.

New cards
43

Mi a különbség az optimistic és a pessimistic lock között?

Az optimistic lock ellenőrzi a erőforráshoz való hozzáférést, és követi annak a változását, ha változás van, akkor megy, hogy használja. (arra számít, hogy ritkán van használva és lesz hely).

A pessmistic lock arra számít, hogy az erőforrás használatba lesz véve, ezért azt lelockolja, hogy amíg ő használja, addig más ne tudjon hozzáférni és csak akkor engedi el, amikor már végzett.

New cards
44

Milyen fontosabb patterneket ismersz?

Builder Pattern: Creational Design Pattern, elkerülhető a hatalmas konstruktor kreálása rentgeteg paraméterrel, nem teszi kötelezővé minden adat deklarálását.

Factory Pattern: Creational Design Pattern, Több subclass megléte esetén, egy factory osztályt hozunk létre, amely a megfelelő objektumot adja vissza. Ezzel könyebb az objektumok implementálása, változtatása, tesztelése, és újra felhasználása.

Event driven: System design practice, microszolgáltatásoknál hasznos

New cards
45

Mi az a REST?

Egy szoftverarchitektúra, HTTP keretein belül jelent meg először, de nem csak arra korlátozódik, Kliens és Szerver közötti kérés választ valósítja meg.

New cards
46

Hogyan működik a rebase és mit jelent?

Sokkal letisztultab lineáris lesz a commit history, az a commitok áthelyeződnek egy másik ágra, vagy az aktuális ág elejére.

New cards
47

Mit jelent a git tag?

A tag egy olyan referecia pont, amely egy speciális commitra history-ra mutat.

New cards
48

Mire és mikor használjuk a merge-t?

A merge paranccsal kettő vagy több ágban végzett változtatásokat tudunk egyesíteni egy ágba. Különböző fejlesztői ágakon végzett munka is könnyen integrálható így a főágba.

New cards
49

Mi a Merge vagy Pull request?

Nem equivalens a git merge vagy git pull paranccsal. Mikor egyesíteni akarunk egy feature-t vagy egy fejlesztői ágat a főágra.

New cards
50

Soroljon fel pár REST-es metódust, headert!

  1. GET

  2. PUT

  3. DELETE

  4. POST

  5. PATCH

  6. Authenticate

  7. Request

  8. Response

New cards
51

Mi a különbség az Exception és a Runtime Exception között?

Az Exception (checked) egy olyan hiba, amit még fordítás időben kezelnünk kell. A Runtime Exception (unchecked) egy futásidőben bekövetkezhető hibát jelez, ezt nem tudja teljesen biztosan megmondani.

New cards
52

Mi az MVC?

Modell View Controller: Három komponensű tervezésű modell.
Modell: Adatok tárolása és kezelése
View: Felhasználói felület része, amely a modellt/adatok jeleníti meg
Controller: Kapcsolatot biztosít a View és a modell között, kezeli a felhasználói inputot

New cards
53

Milyen láthatósági szintek vannak Java-ban?

public: bárhonnan elérhető

private: csak a saját osztályból elérhető

protected: csak a saját csomagban és subclassokból elérhető

alapértelmezett: csak a saját csomagban elérhető

New cards
54

Mi az “@Autwired”? Mikor használjuk?

Függőségek kezelésére használjuk, osztályon kívül példányosítás automatikusan.

New cards
55

Mi az ORM?

Object Relational Mapping
Java objektumok és relációs adatbázis között létesít kapcsolatot a java alkalmazásban.
pl.: JPA, Hibernate, Transaction

New cards
56

Mik azok az entitások? Mire használják őket?

Az entitások Springben az alkalmazásokban létező objektumok, amelyeket adatbázisban lehet tárolni vagy onnan lekérdezni. Ezeket JPA annotációkkal jelöljük: “@Entity”

New cards
57

Milyen Springes annotációkat ismersz?

Autowired, Component, Service, Repository, Controller, Get, Put

New cards
58

Mi az a Java Reflection?

Egy API, amellyel futásidőben módosíthatjuk, vizsgálhatjuk az osztályokat, objektumokat, interfészeket.
Az alábbi módon érhetjük el a az objektum osztályának adatait:
Field[] varName[] = objName .getClass().getDeclaredFields(): ez egy Field[] tömben adja vissza az objName osztályában fellelhető változók neveit. Ezen végig tudunk iterálni és ha megtaláltuk a keresett adattagot, akkor azt meg tudjuk változtatni még akkor is a kívánt értékünkre, ha az private static típusú akár:
field.getName() - visszaadja a változó nevét
field.set(objName, “uj ertek”) - új érték megadása
field.setAccessible(true) - ha privát és statikus, akkor előbb ezt kell használnunk, hogy módosíthatóvá tegyük.

New cards
59

Mire használjuk a service-ket Springben?

REST-es resource mögötti logikára, csak class-okra lehet alkalmazni.

New cards
60

Mi az a JPA?

Java Persistance Api, az adatbázissal való kommunikációt valósítja meg.

New cards
61

Adj példát Springes tervezési modellre!

pl.: MVC, MVVM

New cards
62

Mi az a Spring Bean, hogy tudunk létrehozni beant?

Minden Objektum a Spring keretrendszerben, amit a Spring container-en keresztül hozunk létre azt Spring Bean-nek hívjuk. Annotációkkal hozzul létre őket, @component, @service vagy XML-es metaadatokkal.

New cards
63

Sync és Async között mi a különbség?

A syncnél megvárjuk a választ, míg az asyncnél többet is elküldhetünk egyszerre és nem kell megvárni a választ, futhat tovább a program.

New cards
64

Mi az Angular Directive?

HTML tagek kibővítésére használt attribútum. @Directive annotációval vannak jelölve.

New cards
65

Hogyan lehet Angulárban megvalósítani a two-way binding-ot?

Two-Way Binding: Információ megjelenítése a felhasználónak és a felhasználói input kezelése a feladata. Általában ngModel-el valósítják meg.

New cards
66

Mi az EventEmitter?

Szinkronos vagy aszinkronos megoldási módszer az események küldésére. Többszálúságban lehet haszna.

New cards
67

Angulárban, hogy hozunk létre Service-t?

Injectable annotációkkal és importálással

New cards
68

Milyen lifecycle hookokat ismersz Angularban?

ngOnChanges, ngOnInit, ngOnDestroy

New cards
69

Javascriptben milyen scopek vannak?

local: Function-n belül
block: let, const - ezek csak a {} belül léteznek a var nem lehet block scope
global: Function-n kívül létrehozott.

New cards
70

Mi az a Hoisting JS-ben?

A javascript nem blokkalapú láthatósággal rendelkezik, hanem függvényalapúval, ezért a JS interpreter a függvényen belül deklarált változókat és függvényeket felülre helyezi, és később a sorukban csak értékadás történik.

New cards
71

Mi a callback és a closure?

Callback: JS-ben az eljárásokat objektumként értelmezzük és átadhatóak egymásnak.

Closure: Functionök csoportja. Segíti egy function-nek egy másik külső function változóihoz való hozzáférést.

New cards
72

Milyen változó típusokat ismersz JS-ben?

Const, let, var, Scope-ban eltérőek

New cards
73

Mi a static kulcsszó szerepe?

Változóban: A Stack-ben foglalódik hely neki, nem kell példányosítani az osztályt ahhoz, hogy elérjük, tudjuk változtatni az értékét később, az osztály többszöri példányosításakor is csak egy változat él belőle.
Metódusban: Rögtön lefut a program futásakor, mielőtt az belépne a main-be, nem fér hozzá a nem statikus változókhoz, szintén példányosítás nélkül hozzáférhető, nem lehet override-olni, de over hide-olni igen, ugyanaz kb. csak nem felülírja, hanem a elrejti a super class metódusát.
Class: Java-ban a fő osztály nem lehet static csak a belső osztály. A statikus belső osztályok csak a külső osztály statikus tagjaihoz fér hozzá.

New cards
74

Mik az osztályok?

Az osztályok az OOP szerves részei. A program gyakorlatilag az osztályok és azok közötti kommunikációból áll. Egy-egy Objektumot számos kisebb objektumból állíthatunk össze. Class kulcsszóval definiáljuk őket. Léteznek Subclass-ok és nessted class-ok, minden létezhet konstruktora, metódusa és változója, lehet abstract.

New cards
75

Mi concurrent package java-ban?

Ennek a csomag köszönhetően oldható meg javában a többszálúság, azaz hogy párhuzamosan tudjunk futtatni egyszerre több alkalmazást, programot. Ennek legfontosabb része a Threads. Számos része van a csomagnak:

  1. Executor: feladatokat futtatásáért felel.

  2. ExecutorService: szálelérhetőség alapján állít össze egy várólistát.

  3. Lockes: lezár más szálakat, hogy elérjenek bizonyos funkciókat, amig jelenleg használ.

New cards
76

Magyarázd el a Set adatszerkezetet!

Bármilyen adatot tárolhatunk egy set-ben, de általában vmilyen közös tulajdonság alapján szoktuk az adatokat egy set-be rakni. Nem tartalmaz duplikációt, és az elemek sorrendje nem feltétlen egyezik meg az elemek beillesztésének sorrendjével. Lehet használni rajta a metszet, unió, különbség operációkat. HashSet, TreeSet is létezik.
private Set<Integer> setA = setOf(1,2,3,4);

New cards
77

Mi a rekurzió?

Mikor önmagát hívjuk meg.

New cards
78

Mi a CI/CD?

Continuous Integration / Continuous Delivery:
Automatikusan gyakran frissíti a kódot mondjuk a GIT-n keresztül, hogy a többi fejlesztő is mindig a legfrisebb változatokkal tudjon tesztelni és dolgozni.

New cards
79

Mi a Kanban?

Egy vizuális tábla, amin vizuálisan rögzítjük a fejlődést és így egyszerűbben nyomon tudjuk követketni az egészet és átláthatóbb is lesz.

New cards
80

Van a többszörös öröklődés?

A java nyelven nincs ténylegesen megvalósítva a többszörös öröklődés, de mégis van rá módszer, hogy vmi hasonlót létrehozzunk. Ezt Abstract osztályokkal és interfészekkel tudjuk elérni. Egy osztálynak lehet több gyerekosztálya, de egy subclass-nak csak egy szülője lehet.

New cards
81

Mit jelent az, hogy a String immutable vagy final?

A String Pool bevezetésekor nyílván probléma volt, hogy több változó mutatott egy memóriacímre, mert ha az egyiken változtatás történt, akkor a többi is megváltozott. Hogy ezt elkerüljük bevezették, hogy a String class final és immutable, azaz állandó, ezért ha most megváltoztatjuk a String-t, és több változó osztozik rajta, akkor egy új memóriacímre fog kerülni ez az új érték.

New cards
82

Mi a @Restcontroller?

A Springen belül egyesíti a @Controller és a @ResponseBody annotációkat. Segítségével nem kell mindig kitennünk a @ResponseBody annotációt minden metódushoz, hanem egyszer a Class elején a @Restcontroller gondoskodik arról, hogy a HTTP kérést kezelő metódusok visszatérési értéke rögtön serializálva legyen JSON-ná és HTTP válasz legyen.

New cards
83

Mik az Endpointok, működésük?

Monitorozni és irányítani tudjuk vele a Spring alkalmazásunkat.
Actuator Endpoint: Monitorozást és a kezelést teszi lehetővé az alkalmazásunkkal. pl.: Health Endpoint, az alkalmazásról közöl információkat.
Custom Endpoint: Létre tudunk hozni sajátot, amit mi befolyásolunk, hogy bizonyos információkat megtudjun ka programunkról, amikre kíváncsiak vagyunk.
@Endpoint annotációval tudjuk megadni a saját funkciónkat endpointként.

New cards
84

Mi a Spring Container?

A Spring container az egyik alapköve a Springnek. Ez gondoskodik az objektumok kreálásáról és konfigurálásáról. Az IoC törvényét követi. (Inversion of Control) Ez a container irányítja az alkalmazás részeinek folyamatát, a könyebb menedzselés érdekében. A Container kiolvassa a metaadat-ból az információkat, hogy objektumokat hozzon létre, konfigurálja őket és egyesítse. Ezzel egy dinamikus és flexibilis megoldást nyújt az alkalmazásfejlesztésnek.

New cards
85

Mit csinál a @ResponseBody?

Mikor az Angular kliensel együtt működik a Spring. A Spring vár egy JSON fájlt és ezt az @RequestBody deserializálja, hogy érthető legyen Springben.
Az @ResponseBody segítségével, amit az objektum választ visszaadna, automatikusan serializálja JSON-ná és küldi a kliens felé. @RestController esetén nem kell kitennünk a @ResponseBody-t

New cards

Explore top notes

note Note
studied byStudied by 9 people
Updated ... ago
5.0 Stars(1)
note Note
studied byStudied by 32 people
Updated ... ago
4.0 Stars(1)
note Note
studied byStudied by 48 people
Updated ... ago
4.5 Stars(2)
note Note
studied byStudied by 23 people
Updated ... ago
5.0 Stars(2)
note Note
studied byStudied by 11 people
Updated ... ago
5.0 Stars(1)
note Note
studied byStudied by 8 people
Updated ... ago
5.0 Stars(1)
note Note
studied byStudied by 9 people
Updated ... ago
4.0 Stars(1)
note Note
studied byStudied by 69 people
Updated ... ago
5.0 Stars(1)

Explore top flashcards

flashcards Flashcard21 terms
studied byStudied by 51 people
Updated ... ago
5.0 Stars(2)
flashcards Flashcard42 terms
studied byStudied by 348 people
Updated ... ago
5.0 Stars(1)
flashcards Flashcard108 terms
studied byStudied by 757 people
Updated ... ago
5.0 Stars(1)
flashcards Flashcard23 terms
studied byStudied by 4 people
Updated ... ago
5.0 Stars(1)
flashcards Flashcard171 terms
studied byStudied by 3 people
Updated ... ago
5.0 Stars(1)
flashcards Flashcard20 terms
studied byStudied by 372 people
Updated ... ago
4.1 Stars(15)
flashcards Flashcard21 terms
studied byStudied by 3 people
Updated ... ago
5.0 Stars(2)
flashcards Flashcard66 terms
studied byStudied by 53 people
Updated ... ago
5.0 Stars(1)